From: Vsevolod Stakhov Date: Thu, 8 Mar 2018 17:13:42 +0000 (+0000) Subject: [Minor] Fix overwriting of lowercased content-disposition data X-Git-Tag: 1.7.0~34 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=0398b848d4b61b90c51175c713ee3ba1c16829f2;p=thirdparty%2Frspamd.git [Minor] Fix overwriting of lowercased content-disposition data --- diff --git a/src/libmime/content_type.c b/src/libmime/content_type.c index bcb0478981..61520c425e 100644 --- a/src/libmime/content_type.c +++ b/src/libmime/content_type.c @@ -502,13 +502,12 @@ rspamd_content_disposition_parse (const gchar *in, { struct rspamd_content_disposition *res = NULL, val; - val.lc_data = rspamd_mempool_alloc (pool, len + 1); - rspamd_strlcpy (val.lc_data, in, len); - rspamd_str_lc (val.lc_data, len); - if (rspamd_content_disposition_parser (in, len, &val, pool)) { res = rspamd_mempool_alloc (pool, sizeof (val)); memcpy (res, &val, sizeof (val)); + res->lc_data = rspamd_mempool_alloc (pool, len + 1); + rspamd_strlcpy (res->lc_data, in, len); + rspamd_str_lc (res->lc_data, len); } else { msg_warn_pool ("cannot parse content disposition: %*s",