From 1f1f63c239770d191235b213630142ffc801d461 Mon Sep 17 00:00:00 2001 From: Matthew Exon Date: Sat, 28 Sep 2019 09:57:46 +0200 Subject: [PATCH] Mailstream: remove URL parameters when extracting image filenames --- mailstream/mailstream.php | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/mailstream/mailstream.php b/mailstream/mailstream.php index e4abc597f..bdd02a49f 100644 --- a/mailstream/mailstream.php +++ b/mailstream/mailstream.php @@ -157,12 +157,13 @@ function mailstream_do_images($a, &$item, &$attachments) { preg_match_all("/\[img\=([0-9]*)x([0-9]*)\](.*?)\[\/img\]/ism", $item["body"], $matches1); preg_match_all("/\[img\](.*?)\[\/img\]/ism", $item["body"], $matches2); foreach (array_merge($matches1[3], $matches2[1]) as $url) { + $components = parse_url($url); $cookiejar = tempnam(get_temppath(), 'cookiejar-mailstream-'); $curlResult = Network::fetchUrlFull($url, true, 0, '', $cookiejar); $attachments[$url] = [ 'data' => $curlResult->getBody(), 'guid' => hash("crc32", $url), - 'filename' => basename($url), + 'filename' => basename($components['path']), 'type' => $curlResult->getContentType() ];