diff options
author | David Kalnischkies <kalnischkies@gmail.com> | 2011-06-29 19:21:34 +0200 |
---|---|---|
committer | David Kalnischkies <kalnischkies@gmail.com> | 2011-06-29 19:21:34 +0200 |
commit | 8f8ed8f4e50fd98aa43ee69971cac8bda55760f1 (patch) | |
tree | 79dbb2f29aca55db49f8e7213094a8423caa343e /methods/mirror.cc | |
parent | d953d210bb54accb416f2144104b79dcd29198ba (diff) | |
parent | 6f747894998e10649d0237fe5f7b9b85a5266f1f (diff) |
merge with debian-experimental 0.8.16~exp2 release
Diffstat (limited to 'methods/mirror.cc')
-rw-r--r-- | methods/mirror.cc | 19 |
1 files changed, 17 insertions, 2 deletions
diff --git a/methods/mirror.cc b/methods/mirror.cc index 2cf5c9ce1..713dc211a 100644 --- a/methods/mirror.cc +++ b/methods/mirror.cc @@ -134,6 +134,10 @@ bool MirrorMethod::DownloadMirrorFile(string mirror_uri_str) string fetch = BaseUri; fetch.replace(0,strlen("mirror://"),"http://"); + // append the dist as a query string + if (Dist != "") + fetch += "?dist=" + Dist; + if(Debug) clog << "MirrorMethod::DownloadMirrorFile(): '" << fetch << "'" << " to " << MirrorFile << endl; @@ -274,8 +278,18 @@ bool MirrorMethod::InitMirrors() while (!in.eof()) { getline(in, s); - if (s.size() > 0) - AllMirrors.push_back(s); + + // ignore lines that start with # + if (s.find("#") == 0) + continue; + // ignore empty lines + if (s.size() == 0) + continue; + // ignore non http lines + if (s.find("http://") != 0) + continue; + + AllMirrors.push_back(s); } Mirror = AllMirrors[0]; UsedMirror = Mirror; @@ -329,6 +343,7 @@ string MirrorMethod::GetMirrorFileName(string mirror_uri_str) if(Debug) std::cerr << "found BaseURI: " << uristr << std::endl; BaseUri = uristr.substr(0,uristr.size()-1); + Dist = (*I)->GetDist(); } } // get new file |