diff options
| author | Carl Hetherington <cth@carlh.net> | 2018-12-24 23:55:29 +0000 |
|---|---|---|
| committer | Carl Hetherington <cth@carlh.net> | 2018-12-24 23:55:29 +0000 |
| commit | 341f1d20aec99d6f413b66ce60824337fd1b36e3 (patch) | |
| tree | 2eb57f4b166bc24b2b84a71030c105ffca673e84 | |
| parent | c60f1742ec62ae8ff4c631d4f4f83be75214ecec (diff) | |
Fix failure to re-write bad configuration files caused by trying to check for a link in the bad file.
| -rw-r--r-- | src/lib/config.cc | 14 |
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; |
