From: Kevin McCarthy Date: Tue, 30 Oct 2018 15:55:52 +0000 (-0700) Subject: Fix memory leak on error in eat_regexp() and eat_date(). X-Git-Tag: mutt-1-11-rel~24 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=5cfbcf522f90cbb745a5e5c8558aa47631caa7d5;p=mutt Fix memory leak on error in eat_regexp() and eat_date(). --- diff --git a/pattern.c b/pattern.c index f72d648d..890cfb90 100644 --- a/pattern.c +++ b/pattern.c @@ -266,11 +266,13 @@ static int eat_regexp (pattern_t *pat, BUFFER *s, BUFFER *err) !buf.data) { snprintf (err->data, err->dsize, _("Error in expression: %s"), pexpr); + FREE (&buf.data); return (-1); } if (!*buf.data) { snprintf (err->data, err->dsize, "%s", _("Empty expression")); + FREE (&buf.data); return (-1); } @@ -585,11 +587,13 @@ static int eat_date (pattern_t *pat, BUFFER *s, BUFFER *err) if (mutt_extract_token (&buffer, s, MUTT_TOKEN_COMMENT | MUTT_TOKEN_PATTERN) != 0 || !buffer.data) { + FREE (&buffer.data); snprintf (err->data, err->dsize, _("Error in expression: %s"), pexpr); return (-1); } if (!*buffer.data) { + FREE (&buffer.data); snprintf (err->data, err->dsize, "%s", _("Empty expression")); return (-1); }