Skip to content

Commit 81fdfb9

Browse files
committed
decode_header: fix pointential memory leak if decode_header failed
In mailinfo.c line 539, if convert_to_utf8 failed, the strbuf stored in dec will leak. Simply add strbuf_release and free(dec) will solve this problem. Signed-off-by: Lidong Yan <[email protected]>
1 parent 6f84262 commit 81fdfb9

File tree

1 file changed

+4
-1
lines changed

1 file changed

+4
-1
lines changed

mailinfo.c

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -536,8 +536,11 @@ static void decode_header(struct mailinfo *mi, struct strbuf *it)
536536
dec = decode_q_segment(&piecebuf, 1);
537537
break;
538538
}
539-
if (convert_to_utf8(mi, dec, charset_q.buf))
539+
if (convert_to_utf8(mi, dec, charset_q.buf)) {
540+
strbuf_release(dec);
541+
free(dec);
540542
goto release_return;
543+
}
541544

542545
strbuf_addbuf(&outbuf, dec);
543546
strbuf_release(dec);

0 commit comments

Comments
 (0)