From b601c49f6cee5c48e805cd7e93ff1306ee4825f9 Mon Sep 17 00:00:00 2001 From: Stenzek Date: Sat, 9 Sep 2023 14:43:22 +1000 Subject: [PATCH] Qt: Cancel existing BIOS search on refresh Stops lockups if you set a large directory. --- pcsx2-qt/Settings/BIOSSettingsWidget.cpp | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/pcsx2-qt/Settings/BIOSSettingsWidget.cpp b/pcsx2-qt/Settings/BIOSSettingsWidget.cpp index 439e62b149..17837d9d66 100644 --- a/pcsx2-qt/Settings/BIOSSettingsWidget.cpp +++ b/pcsx2-qt/Settings/BIOSSettingsWidget.cpp @@ -65,6 +65,7 @@ void BIOSSettingsWidget::refreshList() { if (m_refresh_thread) { + m_refresh_thread->requestInterruption(); m_refresh_thread->wait(); delete m_refresh_thread; } @@ -176,6 +177,9 @@ void BIOSSettingsWidget::RefreshThread::run() { for (const QFileInfo& info : dir.entryInfoList(QDir::Files)) { + if (isInterruptionRequested()) + break; + BIOSInfo bi; QString full_path(info.absoluteFilePath()); if (!IsBIOS(full_path.toUtf8().constData(), bi.version, bi.description, bi.region, bi.zone))