From 7cabbf8333319c98295dcaa436e021c7e5091d1d Mon Sep 17 00:00:00 2001 From: thecozies <79979276+thecozies@users.noreply.github.com> Date: Mon, 1 Sep 2025 14:28:36 -0500 Subject: [PATCH] bug fix + don't save mod config unless changed --- librecomp/src/config.cpp | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/librecomp/src/config.cpp b/librecomp/src/config.cpp index 3ad39d9..8ca78af 100644 --- a/librecomp/src/config.cpp +++ b/librecomp/src/config.cpp @@ -282,10 +282,10 @@ void Config::try_call_option_change_callback(const std::string& option_id, Confi } void Config::set_option_value(const std::string& option_id, ConfigValueVariant value) { - ConfigStorage &storage = requires_confirmation ? temp_storage : storage; + ConfigStorage &conf_storage = requires_confirmation ? temp_storage : storage; - auto it = storage.value_map.find(option_id); - if (it != storage.value_map.end()) { + auto it = conf_storage.value_map.find(option_id); + if (it != conf_storage.value_map.end()) { ConfigValueVariant prev_value = it->second; it->second = value; @@ -469,7 +469,10 @@ bool Config::load_config(std::function validate_callback if (requires_confirmation) { revert_temp_config(); } - save_config(); + if (!is_mod_config) { + // Only save default config for non-mod configs + save_config(); + } derive_all_config_option_dependencies(); clear_config_option_updates(); loaded_config = true;