]> git.ipfire.org Git - thirdparty/squid.git/commitdiff
Validate mime icon URL before allocating store entries
authorAmos Jeffries <squid3@treenet.co.nz>
Sat, 8 Jul 2017 10:04:48 +0000 (22:04 +1200)
committerAmos Jeffries <yadij@users.noreply.github.com>
Sun, 8 Jul 2018 14:04:24 +0000 (02:04 +1200)
src/mime.cc

index ef610e66df7c58414afe4d42722713be25a94cd4..a159dea369de27457608bc8e95978603765121bc 100644 (file)
@@ -399,6 +399,10 @@ MimeIcon::created(StoreEntry *newEntry)
         status = Http::scNoContent;
     }
 
+    HttpRequest *r = HttpRequest::CreateFromUrl(url_);
+    if (!r)
+        fatalf("mimeLoadIcon: cannot parse internal URL: %s", url_);
+
     // fill newEntry with a canned 2xx response object
     RequestFlags flags;
     flags.cachable = true;
@@ -407,10 +411,6 @@ MimeIcon::created(StoreEntry *newEntry)
     EBIT_SET(e->flags, ENTRY_SPECIAL);
     e->setPublicKey();
     e->buffer();
-    HttpRequest *r = HttpRequest::CreateFromUrl(url_);
-
-    if (NULL == r)
-        fatalf("mimeLoadIcon: cannot parse internal URL: %s", url_);
 
     e->mem_obj->request = r;
     HTTPMSGLOCK(e->mem_obj->request);