Explorar o código

Citra-Qt: Use Core::RunLoop when not single stepping.

bunnei %!s(int64=11) %!d(string=hai) anos
pai
achega
0fab380801
Modificáronse 1 ficheiros con 9 adicións e 12 borrados
  1. 9 12
      src/citra_qt/bootmanager.cpp

+ 9 - 12
src/citra_qt/bootmanager.cpp

@@ -33,19 +33,16 @@ void EmuThread::run()
     stop_run = false;
     while (!stop_run)
     {
-        for (int tight_loop = 0; tight_loop < 10000; ++tight_loop)
+        if (cpu_running)
         {
-            if (cpu_running || exec_cpu_step)
-            {
-                if (exec_cpu_step)
-                    exec_cpu_step = false;
-
-                Core::SingleStep();
-                if (!cpu_running) {
-                    emit CPUStepped();
-                    yieldCurrentThread();
-                }
-            }
+            Core::RunLoop();
+        } 
+        else if (exec_cpu_step)
+        {
+            exec_cpu_step = false;
+            Core::SingleStep();
+            emit CPUStepped();
+            yieldCurrentThread();
         }
     }
     render_window->moveContext();