From: Andrew W. Nosenko Date: Tue, 18 Mar 2003 14:51:52 +0000 (+0000) Subject: - buffy.c (test_last_status_new): Fix memory leak. Envelope X-Git-Tag: mutt-1-5-4-rel~4 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=57fa4828cbfd1d393c00792be14ffeca2e8c09cc;p=mutt - buffy.c (test_last_status_new): Fix memory leak. Envelope structure allocated by mutt_read_rfc822_header() was never deallocated. - parse.c (mutt_read_rfc822_header): Comment added about needing deallocate envelope structure returned by mutt_read_rfc822_header(). --- diff --git a/buffy.c b/buffy.c index 4b33b2b2..43ba56fa 100644 --- a/buffy.c +++ b/buffy.c @@ -95,15 +95,18 @@ int fseek_last_message (FILE * f) int test_last_status_new (FILE * f) { HEADER *hdr; + ENVELOPE* tmp_envelope; int result = 0; if (fseek_last_message (f) == -1) return (0); hdr = mutt_new_header (); - mutt_read_rfc822_header (f, hdr, 0, 0); + tmp_envelope = mutt_read_rfc822_header (f, hdr, 0, 0); if (!(hdr->read || hdr->old)) result = 1; + + mutt_free_envelope(&tmp_envelope); mutt_free_header (&hdr); return result; diff --git a/parse.c b/parse.c index 13b8ed57..78e4dd73 100644 --- a/parse.c +++ b/parse.c @@ -1254,6 +1254,8 @@ int mutt_parse_rfc822_line (ENVELOPE *e, HEADER *hdr, char *line, char *p, short * $weed option, honor the header weed list for user headers. * Used for recall-message. * + * Returns: newly allocated envelope structure. You should free it by + * mutt_free_envelope() when envelope stay unneeded. */ ENVELOPE *mutt_read_rfc822_header (FILE *f, HEADER *hdr, short user_hdrs, short weed)