aboutsummaryrefslogtreecommitdiff
path: root/src/common
diff options
context:
space:
mode:
authorfurszy <matiasfurszyfer@protonmail.com>2024-01-09 09:54:49 -0300
committerfurszy <matiasfurszyfer@protonmail.com>2024-01-22 10:50:03 -0300
commit966f5de99a9f5da05c91378ad1e8ea8ed37ac3b3 (patch)
tree8d1d6abefc908ec6dd83391553477f6349b02cc1 /src/common
parent03752444cd54df05a731557968d5a9f33a55c55c (diff)
downloadbitcoin-966f5de99a9f5da05c91378ad1e8ea8ed37ac3b3.tar.xz
init: improve corrupted/empty settings file error msg
The preceding "Unable to parse settings file" message lacked the necessary detail and guidance for users on what steps to take next in order to resolve the startup error. Co-authored-by: Ryan Ofsky <ryan@ofsky.org>
Diffstat (limited to 'src/common')
-rw-r--r--src/common/settings.cpp4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/common/settings.cpp b/src/common/settings.cpp
index 5761e8b321..cbf794a7c6 100644
--- a/src/common/settings.cpp
+++ b/src/common/settings.cpp
@@ -81,7 +81,9 @@ bool ReadSettings(const fs::path& path, std::map<std::string, SettingsValue>& va
SettingsValue in;
if (!in.read(std::string{std::istreambuf_iterator<char>(file), std::istreambuf_iterator<char>()})) {
- errors.emplace_back(strprintf("Unable to parse settings file %s", fs::PathToString(path)));
+ errors.emplace_back(strprintf("Settings file %s does not contain valid JSON. This is probably caused by disk corruption or a crash, "
+ "and can be fixed by removing the file, which will reset settings to default values.",
+ fs::PathToString(path)));
return false;
}