#include <apt-pkg/error.h>
#include <apt-pkg/hashes.h>
#include <apt-pkg/sourcelist.h>
-
+#include <apt-pkg/configuration.h>
+#include <apt-pkg/metaindex.h>
#include <algorithm>
#include <fstream>
if (I == list.end())
unlink(Dir->d_name);
};
-
- chdir(StartDir.c_str());
+
closedir(D);
+ if (chdir(StartDir.c_str()) != 0)
+ return _error->Errno("chdir",_("Unable to change to %s"),StartDir.c_str());
return true;
}
// 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++)
+ I != vec.end(); ++I)
if (I == vec.begin())
- fetch += "?arch" + (*I);
+ fetch += "?arch=" + (*I);
else
fetch += "&arch=" + (*I);
AllMirrors.push_back(s);
}
+ if (AllMirrors.empty()) {
+ return _error->Error(_("No entry found in mirror file '%s'"), MirrorFile.c_str());
+ }
Mirror = AllMirrors[0];
UsedMirror = Mirror;
return true;