From 550fa1046e58ee1a94a6ae56eaba3ebbb8d133b3 Mon Sep 17 00:00:00 2001 From: Adam Honse Date: Mon, 17 Aug 2026 19:37:55 -0500 Subject: [PATCH] Fix logic around denying setting or modifying local settings from the server --- SettingsManager.cpp | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/SettingsManager.cpp b/SettingsManager.cpp index 7dcf10e3f..0f26bc7ec 100644 --- a/SettingsManager.cpp +++ b/SettingsManager.cpp @@ -231,6 +231,11 @@ void SettingsManager::ModifySettings(std::string settings_key, json new_settings } } + if(local_setting && from_server) + { + return; + } + if(!local_setting && ResourceManager::get()->IsLocalClient() && (ResourceManager::get()->GetLocalClient()->GetSupportsSettingsManagerAPI())) { /*-------------------------------------------------*\ @@ -243,7 +248,7 @@ void SettingsManager::ModifySettings(std::string settings_key, json new_settings ResourceManager::get()->GetLocalClient()->SettingsManager_ModifySettings(settings_json.dump()); } - else if(!from_server) + else { mutex.lock(); json filtered_settings = FilterSettingsAgainstSchema(settings_key, new_settings); @@ -287,6 +292,11 @@ void SettingsManager::SetSettings(std::string settings_key, json new_settings, b } } + if(local_setting && from_server) + { + return; + } + if(!local_setting && ResourceManager::get()->IsLocalClient() && (ResourceManager::get()->GetLocalClient()->GetSupportsSettingsManagerAPI())) { /*-------------------------------------------------*\ @@ -299,7 +309,7 @@ void SettingsManager::SetSettings(std::string settings_key, json new_settings, b ResourceManager::get()->GetLocalClient()->SettingsManager_SetSettings(settings_json.dump()); } - else if(!from_server) + else { mutex.lock(); json filtered_settings = FilterSettingsAgainstSchema(settings_key, new_settings);