summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Vogt <michael.vogt@ubuntu.com>2011-03-24 18:01:25 +0100
committerMichael Vogt <michael.vogt@ubuntu.com>2011-03-24 18:01:25 +0100
commitb46fb8ff65bf345e51b11946783b450f6fa8f0a8 (patch)
tree20fe577827cab6572f61a453321e45fe022a1dc3
parent0004842de7eeac345b614fa0b6bd241af0c4cc34 (diff)
methods/mirror.cc: raise error if the mirror file can not be read
-rw-r--r--methods/mirror.cc7
1 files changed, 7 insertions, 0 deletions
diff --git a/methods/mirror.cc b/methods/mirror.cc
index 00757e61f..2cf5c9ce1 100644
--- a/methods/mirror.cc
+++ b/methods/mirror.cc
@@ -256,6 +256,13 @@ bool MirrorMethod::InitMirrors()
return _error->Error(_("No mirror file '%s' found "), MirrorFile.c_str());
}
+ if (access(MirrorFile.c_str(), R_OK) != 0)
+ {
+ // FIXME: fallback to a default mirror here instead
+ // and provide a config option to define that default
+ return _error->Error(_("Can not read mirror file '%s'"), MirrorFile.c_str());
+ }
+
// FIXME: make the mirror selection more clever, do not
// just use the first one!
// BUT: we can not make this random, the mirror has to be