diff options
| author | 2024-01-03 22:16:54 -0500 | |
|---|---|---|
| committer | 2024-01-03 22:49:41 -0500 | |
| commit | fa04dea7c4f0d5dba86cdec23d6e8262752983e9 (patch) | |
| tree | 220d650ef629fc34561e6ee7cc3ea18106e3244d /src/frontend_common/config.cpp | |
| parent | android: Don't save settings on config destruction (diff) | |
| download | yuzu-fa04dea7c4f0d5dba86cdec23d6e8262752983e9.tar.gz yuzu-fa04dea7c4f0d5dba86cdec23d6e8262752983e9.tar.xz yuzu-fa04dea7c4f0d5dba86cdec23d6e8262752983e9.zip | |
frontend_common: config: Only write setting related to opened config file
If we tried to write a switchable setting to config that was not using global in the global config instance, we could write the per-game setting accidentally. This ensures that we always use the global setting for global config and the currently applied setting for custom config.
Diffstat (limited to 'src/frontend_common/config.cpp')
| -rw-r--r-- | src/frontend_common/config.cpp | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/src/frontend_common/config.cpp b/src/frontend_common/config.cpp index 51576b4ee..678e27ef8 100644 --- a/src/frontend_common/config.cpp +++ b/src/frontend_common/config.cpp | |||
| @@ -894,9 +894,10 @@ void Config::WriteSettingGeneric(const Settings::BasicSetting* const setting) { | |||
| 894 | WriteBooleanSetting(std::string(key).append("\\use_global"), setting->UsingGlobal()); | 894 | WriteBooleanSetting(std::string(key).append("\\use_global"), setting->UsingGlobal()); |
| 895 | } | 895 | } |
| 896 | if (global || !setting->UsingGlobal()) { | 896 | if (global || !setting->UsingGlobal()) { |
| 897 | auto value = global ? setting->ToStringGlobal() : setting->ToString(); | ||
| 897 | WriteBooleanSetting(std::string(key).append("\\default"), | 898 | WriteBooleanSetting(std::string(key).append("\\default"), |
| 898 | setting->ToString() == setting->DefaultToString()); | 899 | value == setting->DefaultToString()); |
| 899 | WriteStringSetting(key, setting->ToString()); | 900 | WriteStringSetting(key, value); |
| 900 | } | 901 | } |
| 901 | } else if (global) { | 902 | } else if (global) { |
| 902 | WriteBooleanSetting(std::string(key).append("\\default"), | 903 | WriteBooleanSetting(std::string(key).append("\\default"), |