]> git.saurik.com Git - apt.git/commitdiff
merged from lp:~mvo/apt/mvo
authorMichael Vogt <michael.vogt@ubuntu.com>
Mon, 15 Aug 2011 12:21:31 +0000 (14:21 +0200)
committerMichael Vogt <michael.vogt@ubuntu.com>
Mon, 15 Aug 2011 12:21:31 +0000 (14:21 +0200)
apt-pkg/acquire.cc
debian/changelog
methods/mirror.cc

index 34e2f5aacd83b0e796c9ced3b00fe59dcc0fd552..8c00748b2eb3a05a104a5027cec48911b6d2b7ba 100644 (file)
@@ -849,7 +849,9 @@ bool pkgAcquireStatus::Pulse(pkgAcquire *Owner)
 
       char msg[200];
       long i = CurrentItems < TotalItems ? CurrentItems + 1 : CurrentItems;
-      unsigned long long const ETA = (TotalBytes - CurrentBytes) / CurrentCPS;
+      unsigned long long ETA = 0;
+      if(CurrentCPS > 0)
+         ETA = (TotalBytes - CurrentBytes) / CurrentCPS;
 
       // only show the ETA if it makes sense
       if (ETA > 0 && ETA < 172800 /* two days */ )
index 000459c5cf7e525e98609b6c1341f69cf6501765..3c40d13c0e63a09d54fc9563e734088b580e8465 100644 (file)
@@ -1,4 +1,4 @@
-apt (0.8.16~exp5) experimental; urgency=low
+apt (0.8.16~exp5) UNRELEASEDexperimental; urgency=low
 
   * merged the latest debian-sid fixes
   * apt-pkg/makefile:
@@ -11,6 +11,11 @@ apt (0.8.16~exp5) experimental; urgency=low
   * apt-pkg/acquire-item.{cc,h}:
     - do not check for a "Package" tag in optional index targets
       like the translations index
+  * apt-pkg/acquire.cc:
+    - fix potential divide-by-zero
+  * methods/mirror.cc:
+    - include the architecture(s) in the query string as well so 
+      that the server can make better decisions
 
  -- Michael Vogt <mvo@debian.org>  Fri, 05 Aug 2011 10:57:08 +0200
 
index cb24a06cf1743a80eaf5f072bb4cad08d56c563b..a3e60ab150ddcffaf9a86a490d9857f8ac8437a1 100644 (file)
@@ -8,6 +8,7 @@
    ##################################################################### */
                                                                        /*}}}*/
 // Include Files                                                       /*{{{*/
+#include <apt-pkg/aptconfiguration.h>
 #include <apt-pkg/fileutl.h>
 #include <apt-pkg/acquire-method.h>
 #include <apt-pkg/acquire-item.h>
@@ -134,9 +135,24 @@ bool MirrorMethod::DownloadMirrorFile(string mirror_uri_str)
    string fetch = BaseUri;
    fetch.replace(0,strlen("mirror://"),"http://");
 
+#if 0 // no need for this, the getArchitectures() will also include the main 
+      // arch
+   // append main architecture
+   fetch += "?arch=" + _config->Find("Apt::Architecture");
+#endif
+
+   // append all architectures
+   std::vector<std::string> vec = APT::Configuration::getArchitectures();
+   for (std::vector<std::string>::const_iterator I = vec.begin();
+        I != vec.end(); I++)
+      if (I == vec.begin())
+         fetch += "?arch" + (*I);
+      else
+         fetch += "&arch=" + (*I);
+
    // append the dist as a query string
    if (Dist != "")
-      fetch += "?dist=" + Dist;
+      fetch += "&dist=" + Dist;
 
    if(Debug)
       clog << "MirrorMethod::DownloadMirrorFile(): '" << fetch << "'"