From 50f32eb0664d921242563f6602ce5a8f46557085 Mon Sep 17 00:00:00 2001 From: Jakub Jelen Date: Wed, 7 Apr 2021 17:58:10 +0200 Subject: [PATCH] agent: Correctly free memory on error path. * agent/protect.c (merge_lists): Free memory on error. -- GnuPG-bug-id: 5393 Signed-off-by: Jakub Jelen --- agent/protect.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/agent/protect.c b/agent/protect.c index 4ceb3006e..30ee1345d 100644 --- a/agent/protect.c +++ b/agent/protect.c @@ -970,7 +970,10 @@ merge_lists (const unsigned char *protectedkey, /* Copy the cleartext. */ s = cleartext; if (*s != '(' && s[1] != '(') - return gpg_error (GPG_ERR_BUG); /*we already checked this */ + { + xfree (newlist); + return gpg_error (GPG_ERR_BUG); /*we already checked this */ + } s += 2; startpos = s; while ( *s == '(' )