isync

mailbox synchronization program
git clone https://git.code.sf.net/p/isync/isync
Log | Files | Refs | README | LICENSE

commit 259132b7e7a691cef4bbbda567c72f405f30ec09
parent 4c2fb74207f127a203e0025c6ab5fab725c95d80
Author: Oswald Buddenhagen <ossi@users.sf.net>
Date:   Sun, 26 Dec 2021 19:14:01 +0100

plug memory leaks in imap_{store,trash}_msg() error paths

Diffstat:
Msrc/drv_imap.c | 3+++
1 file changed, 3 insertions(+), 0 deletions(-)

diff --git a/src/drv_imap.c b/src/drv_imap.c @@ -3214,6 +3214,7 @@ imap_trash_msg( store_t *gctx, message_t *msg, cmd->param.to_trash = 1; if (prepare_trash( &buf, ctx ) < 0) { cb( DRV_BOX_BAD, aux ); + free( cmd ); return; } imap_exec( ctx, &cmd->gen, imap_done_simple_msg, @@ -3252,11 +3253,13 @@ imap_store_msg( store_t *gctx, msg_data_t *data, int to_trash, cmd->param.to_trash = 1; if (prepare_trash( &buf, ctx ) < 0) { cb( DRV_BOX_BAD, 0, aux ); + free( cmd ); return; } } else { if (prepare_box( &buf, ctx ) < 0) { cb( DRV_BOX_BAD, 0, aux ); + free( cmd ); return; } }