VideoConfigDiag: Fix bug where postprocessing shader wasn't saved to INI

This commit is contained in:
Stenzek 2017-09-08 01:13:23 +10:00
parent e52d8ef638
commit 0de31d87bd
1 changed files with 8 additions and 3 deletions

View File

@ -1275,18 +1275,23 @@ void VideoConfigDiag::PopulatePostProcessingShaders()
choice_ppshader->AppendString(StrToWxStr(shader));
}
if (!choice_ppshader->SetStringSelection(StrToWxStr(vconfig.sPostProcessingShader)))
if (vconfig.sPostProcessingShader.empty())
{
// Select (off) value in choice.
choice_ppshader->Select(0);
}
else if (!choice_ppshader->SetStringSelection(StrToWxStr(vconfig.sPostProcessingShader)))
{
// Invalid shader, reset it to default
choice_ppshader->Select(0);
if (vconfig.iStereoMode == STEREO_ANAGLYPH)
{
Config::SetCurrent(Config::GFX_ENHANCE_POST_SHADER, std::string("dubois"));
Config::SetBaseOrCurrent(Config::GFX_ENHANCE_POST_SHADER, std::string("dubois"));
choice_ppshader->SetStringSelection(StrToWxStr(vconfig.sPostProcessingShader));
}
else
Config::SetCurrent(Config::GFX_ENHANCE_POST_SHADER, std::string(""));
Config::SetBaseOrCurrent(Config::GFX_ENHANCE_POST_SHADER, std::string(""));
}
// Should the configuration button be loaded by default?