diff options
author | Ryan Ofsky <ryan@ofsky.org> | 2022-05-16 14:37:00 -0400 |
---|---|---|
committer | Ryan Ofsky <ryan@ofsky.org> | 2022-05-19 11:32:56 -0400 |
commit | f9fdcec7e932843a91ddf7f377e00bd2a6efb82a (patch) | |
tree | 445d6149d3336842aa63ee000d64854e834b54a4 /src/node/interfaces.cpp | |
parent | 77fabffef4ea840ee15c97061048fe8443d74658 (diff) |
settings: Add resetSettings() method
Allows the GUI to clear settings.json file and save settings.json.bak file when
GUI "Reset Options" button is pressed or -resetguisettings command line option
is used. (GUI code already backs up and resets the "guisettings.ini" file this
way, so this just makes the same behavior possible for "settings.json")
Diffstat (limited to 'src/node/interfaces.cpp')
-rw-r--r-- | src/node/interfaces.cpp | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/src/node/interfaces.cpp b/src/node/interfaces.cpp index 09404a5f85..01db843976 100644 --- a/src/node/interfaces.cpp +++ b/src/node/interfaces.cpp @@ -144,6 +144,14 @@ public: } }); } + void resetSettings() override + { + gArgs.WriteSettingsFile(/*errors=*/nullptr, /*backup=*/true); + gArgs.LockSettings([&](util::Settings& settings) { + settings.rw_settings.clear(); + }); + gArgs.WriteSettingsFile(); + } void mapPort(bool use_upnp, bool use_natpmp) override { StartMapPort(use_upnp, use_natpmp); } bool getProxy(Network net, Proxy& proxy_info) override { return GetProxy(net, proxy_info); } size_t getNodeCount(ConnectionDirection flags) override |