diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/mirrors.c | 19 |
1 files changed, 17 insertions, 2 deletions
diff --git a/src/mirrors.c b/src/mirrors.c index a4a17c2..cad3f6b 100644 --- a/src/mirrors.c +++ b/src/mirrors.c @@ -81,12 +81,27 @@ char **file_readlines(const char *filename, size_t start, size_t limit, ReaderFn return result; } +/** + * + * @param filename + * @return + */ char **mirror_list(const char *filename) { - char **mirrors = file_readlines(filename, 0, 0, NULL); + char **mirrors = NULL; char **result = NULL; size_t count; - for (count = 0; mirrors[count] != NULL; count++); + // The configuration file isn't critical so if it isn't available, no big deal + if (exists(filename) != 0) { + return NULL; + } + + mirrors = file_readlines(filename, 0, 0, NULL); + if (mirrors == NULL) { + return NULL; + } + + for (count = 0; mirrors[count] != NULL; count++); if (!count) { return NULL; } |