diff options
| author | Shawn Hoffman <godisgovernment@gmail.com> | 2017-06-22 05:42:14 -0700 |
|---|---|---|
| committer | Shawn Hoffman <godisgovernment@gmail.com> | 2017-06-25 20:47:30 -0700 |
| commit | ed8f293b4f4c340dc342e54532fcdd953056efab (patch) | |
| tree | 9fc62b2a22ab8623000f58def58fc78608e2703f /Source/Core/VideoCommon/Fifo.cpp | |
| parent | 88b442e1a85e1c477072a7e9302eafcbd866fbb8 (diff) | |
Change "blocking" BlockingLoop::Stop to give up and die after a timeout.
This fixes the global-static fifo object causing infinite hangs in some
cases. Notably, failure to initialize a graphics backend would result in
BlockingLoop::Prepare being called but never executing Run(), leaving the
object in a bad state.
Diffstat (limited to 'Source/Core/VideoCommon/Fifo.cpp')
| -rw-r--r-- | Source/Core/VideoCommon/Fifo.cpp | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/Source/Core/VideoCommon/Fifo.cpp b/Source/Core/VideoCommon/Fifo.cpp index cedbea5432..15a1853ee7 100644 --- a/Source/Core/VideoCommon/Fifo.cpp +++ b/Source/Core/VideoCommon/Fifo.cpp @@ -144,7 +144,7 @@ void ExitGpuLoop() // Terminate GPU thread loop s_emu_running_state.Set(); - s_gpu_mainloop.Stop(false); + s_gpu_mainloop.Stop(s_gpu_mainloop.kNonBlock); } void EmulatorState(bool running) |
