forked from qt-creator/qt-creator
ProjectExplorer: cancel MSVC tool chain detection on shutdown
Task-number: QTCREATORBUG-21329 Change-Id: I681757f1a2e77ecd7f766f25ab554d57473f1c6d Reviewed-by: Orgad Shaneh <orgads@gmail.com> Reviewed-by: Eike Ziller <eike.ziller@qt.io>
This commit is contained in:
@@ -1184,6 +1184,11 @@ bool MsvcToolChain::operator ==(const ToolChain &other) const
|
|||||||
return m_varsBatArg == msvcTc->m_varsBatArg;
|
return m_varsBatArg == msvcTc->m_varsBatArg;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void MsvcToolChain::cancelMsvcToolChainDetection()
|
||||||
|
{
|
||||||
|
envModThreadPool()->clear();
|
||||||
|
}
|
||||||
|
|
||||||
bool MsvcToolChainFactory::canRestore(const QVariantMap &data)
|
bool MsvcToolChainFactory::canRestore(const QVariantMap &data)
|
||||||
{
|
{
|
||||||
const Core::Id id = typeIdFromMap(data);
|
const Core::Id id = typeIdFromMap(data);
|
||||||
|
@@ -79,6 +79,8 @@ public:
|
|||||||
|
|
||||||
bool operator == (const ToolChain &) const override;
|
bool operator == (const ToolChain &) const override;
|
||||||
|
|
||||||
|
static void cancelMsvcToolChainDetection();
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
explicit MsvcToolChain(Core::Id typeId, const QString &name, const Abi &abi,
|
explicit MsvcToolChain(Core::Id typeId, const QString &name, const Abi &abi,
|
||||||
const QString &varsBat, const QString &varsBatArg,
|
const QString &varsBat, const QString &varsBatArg,
|
||||||
|
@@ -1657,6 +1657,7 @@ ExtensionSystem::IPlugin::ShutdownFlag ProjectExplorerPlugin::aboutToShutdown()
|
|||||||
disconnect(ModeManager::instance(), &ModeManager::currentModeChanged,
|
disconnect(ModeManager::instance(), &ModeManager::currentModeChanged,
|
||||||
dd, &ProjectExplorerPluginPrivate::currentModeChanged);
|
dd, &ProjectExplorerPluginPrivate::currentModeChanged);
|
||||||
ProjectTree::aboutToShutDown();
|
ProjectTree::aboutToShutDown();
|
||||||
|
ToolChainManager::aboutToShutdown();
|
||||||
SessionManager::closeAllProjects();
|
SessionManager::closeAllProjects();
|
||||||
|
|
||||||
dd->m_shuttingDown = true;
|
dd->m_shuttingDown = true;
|
||||||
|
@@ -27,6 +27,7 @@
|
|||||||
|
|
||||||
#include "abi.h"
|
#include "abi.h"
|
||||||
#include "kitinformation.h"
|
#include "kitinformation.h"
|
||||||
|
#include "msvctoolchain.h"
|
||||||
#include "toolchain.h"
|
#include "toolchain.h"
|
||||||
#include "toolchainsettingsaccessor.h"
|
#include "toolchainsettingsaccessor.h"
|
||||||
|
|
||||||
@@ -248,4 +249,9 @@ bool ToolChainManager::isLanguageSupported(const Core::Id &id)
|
|||||||
return Utils::contains(d->m_languages, Utils::equal(&LanguageDisplayPair::id, id));
|
return Utils::contains(d->m_languages, Utils::equal(&LanguageDisplayPair::id, id));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void ToolChainManager::aboutToShutdown()
|
||||||
|
{
|
||||||
|
MsvcToolChain::cancelMsvcToolChainDetection();
|
||||||
|
}
|
||||||
|
|
||||||
} // namespace ProjectExplorer
|
} // namespace ProjectExplorer
|
||||||
|
@@ -74,6 +74,8 @@ public:
|
|||||||
static QString displayNameOfLanguageId(const Core::Id &id);
|
static QString displayNameOfLanguageId(const Core::Id &id);
|
||||||
static bool isLanguageSupported(const Core::Id &id);
|
static bool isLanguageSupported(const Core::Id &id);
|
||||||
|
|
||||||
|
static void aboutToShutdown();
|
||||||
|
|
||||||
void saveToolChains();
|
void saveToolChains();
|
||||||
|
|
||||||
signals:
|
signals:
|
||||||
|
Reference in New Issue
Block a user