summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/lib/config.cc14
1 files changed, 10 insertions, 4 deletions
diff --git a/src/lib/config.cc b/src/lib/config.cc
index e2f2bbeb9..dbd0aea71 100644
--- a/src/lib/config.cc
+++ b/src/lib/config.cc
@@ -970,10 +970,16 @@ Config::config_file ()
}
/* See if there's a link */
- f.read_file (main);
- optional<string> link = f.optional_string_child("Link");
- if (link) {
- return *link;
+ try {
+ f.read_file (main);
+ optional<string> link = f.optional_string_child("Link");
+ if (link) {
+ return *link;
+ }
+ } catch (xmlpp::exception& e) {
+ /* There as a problem reading the main configuration file,
+ so there can't be a link.
+ */
}
return main;