summaryrefslogtreecommitdiff
path: root/Source/Core/VideoCommon/VideoConfig.cpp
diff options
context:
space:
mode:
authoriwubcode <iwubcode@users.noreply.github.com>2023-10-10 17:45:52 -0500
committeriwubcode <iwubcode@users.noreply.github.com>2023-10-10 18:17:24 -0500
commitb251194a7ed9b997049b73804496f5a9218f3b81 (patch)
treead95ce91f173969c96da55d6694ad17e7a9c7536 /Source/Core/VideoCommon/VideoConfig.cpp
parent6aadfd522b4f322cd059faf5eba4e308fbe1740b (diff)
VideoCommon: wait for the GPU to be finished doing any work before invalidating pipelines when graphic config changes
Diffstat (limited to 'Source/Core/VideoCommon/VideoConfig.cpp')
-rw-r--r--Source/Core/VideoCommon/VideoConfig.cpp1
1 files changed, 1 insertions, 0 deletions
diff --git a/Source/Core/VideoCommon/VideoConfig.cpp b/Source/Core/VideoCommon/VideoConfig.cpp
index 69f294f827..426d8f7c8b 100644
--- a/Source/Core/VideoCommon/VideoConfig.cpp
+++ b/Source/Core/VideoCommon/VideoConfig.cpp
@@ -369,6 +369,7 @@ void CheckForConfigChanges()
if (changed_bits & (CONFIG_CHANGE_BIT_HOST_CONFIG | CONFIG_CHANGE_BIT_MULTISAMPLES))
{
OSD::AddMessage("Video config changed, reloading shaders.", OSD::Duration::NORMAL);
+ g_gfx->WaitForGPUIdle();
g_vertex_manager->InvalidatePipelineObject();
g_vertex_manager->NotifyCustomShaderCacheOfHostChange(new_host_config);
g_shader_cache->SetHostConfig(new_host_config);