From e7b113f454e188ed8e3db468a9b17291bc773af7 Mon Sep 17 00:00:00 2001
From: Connor McLaughlin <stenzek@gmail.com>
Date: Sat, 19 Jun 2021 15:53:11 +1000
Subject: [PATCH] System: Don't reset performance counters when turboing

---
 src/core/host_interface.cpp                   | 6 ++++++
 src/frontend-common/common_host_interface.cpp | 3 ++-
 2 files changed, 8 insertions(+), 1 deletion(-)

diff --git a/src/core/host_interface.cpp b/src/core/host_interface.cpp
index f05c01240..45019e139 100644
--- a/src/core/host_interface.cpp
+++ b/src/core/host_interface.cpp
@@ -133,6 +133,7 @@ void HostInterface::ResetSystem()
 {
   System::Reset();
   System::ResetPerformanceCounters();
+  System::ResetThrottler();
   AddOSDMessage(TranslateStdString("OSDMessage", "System reset."));
 }
 
@@ -149,7 +150,10 @@ void HostInterface::PauseSystem(bool paused)
   OnSystemPaused(paused);
 
   if (!paused)
+  {
     System::ResetPerformanceCounters();
+    System::ResetThrottler();
+  }
 }
 
 void HostInterface::DestroySystem()
@@ -424,6 +428,7 @@ bool HostInterface::LoadState(const char* filename)
   }
 
   System::ResetPerformanceCounters();
+  System::ResetThrottler();
   return true;
 }
 
@@ -1174,6 +1179,7 @@ void HostInterface::RecreateSystem()
   }
 
   System::ResetPerformanceCounters();
+  System::ResetThrottler();
 }
 
 void HostInterface::SetMouseMode(bool relative, bool hide_cursor) {}
diff --git a/src/frontend-common/common_host_interface.cpp b/src/frontend-common/common_host_interface.cpp
index f0e178346..4f0a85d36 100644
--- a/src/frontend-common/common_host_interface.cpp
+++ b/src/frontend-common/common_host_interface.cpp
@@ -845,7 +845,7 @@ void CommonHostInterface::UpdateSpeedLimiterState()
   if (System::IsValid())
   {
     System::SetTargetSpeed(target_speed);
-    System::ResetPerformanceCounters();
+    System::ResetThrottler();
   }
 
   if (m_audio_stream)
@@ -1994,6 +1994,7 @@ void CommonHostInterface::RegisterGeneralHotkeys()
                        if (!ConfirmMessage(confirmation_message))
                        {
                          System::ResetPerformanceCounters();
+                         System::ResetThrottler();
                          return;
                        }
                      }