]> git.saurik.com Git - apt.git/blobdiff - apt-pkg/acquire-item.cc
Fix regression for file:/// uris from CVE-2014-0487
[apt.git] / apt-pkg / acquire-item.cc
index 058b8bf74962f78e9f786af4ecfe03325ce3b712..2ced65aa2e21b5d76510fdc7b6d0a16f7af215c5 100644 (file)
@@ -1120,12 +1120,6 @@ void pkgAcqIndex::Done(string Message,unsigned long long Size,string Hash,
    string FileName = LookupTag(Message,"Alt-Filename");
    if (FileName.empty() == false)
    {
-      // The files timestamp matches
-      if (StringToBool(LookupTag(Message,"Alt-IMS-Hit"),false) == true)
-      {
-         ReverifyAfterIMS(FileName);
-         return;
-      }
       Decompression = true;
       Local = true;
       DestFile += ".decomp";
@@ -1142,18 +1136,18 @@ void pkgAcqIndex::Done(string Message,unsigned long long Size,string Hash,
       ErrorText = "Method gave a blank filename";
    }
 
+   if (FileName == DestFile)
+      Erase = true;
+   else
+      Local = true;
+
    // The files timestamp matches
-   if (StringToBool(LookupTag(Message,"IMS-Hit"),false) == true)
+   if (!Local && StringToBool(LookupTag(Message,"IMS-Hit"),false) == true)
    {
       ReverifyAfterIMS(FileName);
       return;
    }
 
-   if (FileName == DestFile)
-      Erase = true;
-   else
-      Local = true;
-   
    string decompProg;
 
    // If we enable compressed indexes, queue for hash verification