From 1b0ad83b994ebc0d32814984fe5bf8a8ecd6aaf0 Mon Sep 17 00:00:00 2001 From: Jarek Kobus Date: Tue, 9 Feb 2021 17:17:02 +0100 Subject: [PATCH] Mark that shutdown has started and don't start any new thread anymore Amends cb5977fbad51d035d05f441e78204f591a5a916f Task-number: QTCREATORBUG-25318 Change-Id: I650389d53571724fe1ec4e299d7d3d8cf4a24061 Reviewed-by: Eike Ziller --- src/plugins/coreplugin/locator/locator.cpp | 4 ++++ src/plugins/coreplugin/locator/locator.h | 1 + 2 files changed, 5 insertions(+) diff --git a/src/plugins/coreplugin/locator/locator.cpp b/src/plugins/coreplugin/locator/locator.cpp index cc1ac31fb70..ac75bac73eb 100644 --- a/src/plugins/coreplugin/locator/locator.cpp +++ b/src/plugins/coreplugin/locator/locator.cpp @@ -171,6 +171,7 @@ bool Locator::delayedInitialize() void Locator::aboutToShutdown() { + m_shuttingDown = true; m_refreshTimer.stop(); if (m_refreshTask.isRunning()) { m_refreshTask.cancel(); @@ -384,6 +385,9 @@ void Locator::setRefreshInterval(int interval) void Locator::refresh(QList filters) { + if (m_shuttingDown) + return; + if (m_refreshTask.isRunning()) { m_refreshTask.cancel(); // this is not ideal because some of the previous filters might have finished, but we diff --git a/src/plugins/coreplugin/locator/locator.h b/src/plugins/coreplugin/locator/locator.h index 26e577eb7fb..1f3c7ece6da 100644 --- a/src/plugins/coreplugin/locator/locator.h +++ b/src/plugins/coreplugin/locator/locator.h @@ -76,6 +76,7 @@ private: LocatorData *m_locatorData = nullptr; + bool m_shuttingDown = false; bool m_settingsInitialized = false; QList m_filters; QList m_customFilters;