diff --git a/OptiScaler/Config.cpp b/OptiScaler/Config.cpp index 4eeb5973..e72f5572 100644 --- a/OptiScaler/Config.cpp +++ b/OptiScaler/Config.cpp @@ -1128,7 +1128,13 @@ bool Config::SaveIni() // Spoofing { - ini.SetValue("Spoofing", "Dxgi", GetBoolValue(Instance()->DxgiSpoofing.value_for_config()).c_str()); + // Save Dxgi spoofing value only if it differs from the current GPU vendor + bool forceSaveDxgi = Instance()->DxgiSpoofing.has_value() && + ((State::Instance().isRunningOnNvidia && Instance()->DxgiSpoofing.value()) || + (!State::Instance().isRunningOnNvidia && !Instance()->DxgiSpoofing.value())); + + ini.SetValue("Spoofing", "Dxgi", + GetBoolValue(Instance()->DxgiSpoofing.value_for_config(forceSaveDxgi)).c_str()); ini.SetValue("Spoofing", "DxgiFactoryWrapping", GetBoolValue(Instance()->DxgiFactoryWrapping.value_for_config()).c_str()); ini.SetValue("Spoofing", "DxgiBlacklist", Instance()->DxgiBlacklist.value_for_config_or("auto").c_str());