Wx: Fix live vsync changes not applying

This commit is contained in:
Connor McLaughlin 2022-02-06 20:51:10 +10:00 committed by refractionpcsx2
parent 0ca3167595
commit 7e8c6fcc9d
2 changed files with 4 additions and 1 deletions

View File

@ -322,7 +322,6 @@ bool Pcsx2Config::GSOptions::operator==(const GSOptions& right) const
OpEqu(FrameSkipEnable) &&
OpEqu(FrameLimitEnable) &&
OpEqu(VsyncEnable) &&
OpEqu(FramesToDraw) &&
OpEqu(FramesToSkip) &&
@ -343,6 +342,8 @@ bool Pcsx2Config::GSOptions::OptionsAreEqual(const GSOptions& right) const
return (
OpEqu(bitset) &&
OpEqu(VsyncEnable) &&
OpEqu(InterlaceMode) &&
OpEqu(Zoom) &&

View File

@ -196,6 +196,7 @@ void SysCoreThread::ApplySettings(const Pcsx2Config& src)
// so, we should block here until GS has finished reinitializing, if needed.
Console.WriteLn("Applying GS settings...");
GetMTGS().ApplySettings();
GetMTGS().SetVSync(EmuConfig.GetEffectiveVsyncMode());
GetMTGS().WaitGS();
}
}
@ -239,6 +240,7 @@ void SysCoreThread::_reset_stuff_as_needed()
if (m_resetVsyncTimers)
{
GetMTGS().SetVSync(EmuConfig.GetEffectiveVsyncMode());
UpdateVSyncRate();
frameLimitReset();