summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Vogt <michael.vogt@ubuntu.com>2011-08-11 16:33:42 +0200
committerMichael Vogt <michael.vogt@ubuntu.com>2011-08-11 16:33:42 +0200
commit44cb56e6fd279b994cad3f5a31e50240d723628a (patch)
tree4f2759a6781ab51d7d4af26f0ff8c00ab21b36f2
parent7f6464872762464d0989166e4431b1e87de5fb82 (diff)
* methods/mirror.cc:
- include the architecture(s) in the query string as well so that the server can make better decisions
-rw-r--r--debian/changelog5
-rw-r--r--methods/mirror.cc18
2 files changed, 21 insertions, 2 deletions
diff --git a/debian/changelog b/debian/changelog
index b2efeae1b..519395af8 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -2,8 +2,11 @@ apt (0.8.16~exp5ubuntu5) UNRELEASED; urgency=low
* debian/control:
- fix VCS location
+ * methods/mirror.cc:
+ - include the architecture(s) in the query string as well so
+ that the server can make better decisions
- -- Michael Vogt <michael.vogt@ubuntu.com> Wed, 10 Aug 2011 06:48:11 +0200
+ -- Michael Vogt <michael.vogt@ubuntu.com> Thu, 11 Aug 2011 16:33:32 +0200
apt (0.8.16~exp5ubuntu4) oneiric; urgency=low
diff --git a/methods/mirror.cc b/methods/mirror.cc
index 713dc211a..7f28c04cb 100644
--- a/methods/mirror.cc
+++ b/methods/mirror.cc
@@ -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 << "'"