diff options
author | Christian Kandeler <christian.kandeler@qt.io> | 2023-07-25 16:31:59 +0200 |
---|---|---|
committer | Christian Kandeler <christian.kandeler@qt.io> | 2023-07-25 14:58:31 +0000 |
commit | 3c58c87585a13df6077e8b68d83716e91bfb45bb (patch) | |
tree | c7bae40177ec131e318996c8cb79d789ff725e9a | |
parent | ad16dba14caf3bc617496a18b4cb66212d4225ec (diff) |
ProjectExplorer: Fix crash on toolchain re-detection
Fixes: QTCREATORBUG-29430
Change-Id: I8233371f70c3889ef81a3f111c298205712a2838
Reviewed-by: hjk <hjk@qt.io>
-rw-r--r-- | src/plugins/mcusupport/mcupackage.cpp | 4 | ||||
-rw-r--r-- | src/plugins/projectexplorer/toolchainoptionspage.cpp | 5 |
2 files changed, 6 insertions, 3 deletions
diff --git a/src/plugins/mcusupport/mcupackage.cpp b/src/plugins/mcusupport/mcupackage.cpp index f41b119338..1c079eebdf 100644 --- a/src/plugins/mcusupport/mcupackage.cpp +++ b/src/plugins/mcusupport/mcupackage.cpp @@ -10,6 +10,7 @@ #include <coreplugin/icore.h> #include <debugger/debuggeritem.h> #include <debugger/debuggeritemmanager.h> +#include <projectexplorer/devicesupport/devicemanager.h> #include <projectexplorer/projectexplorerconstants.h> #include <projectexplorer/toolchain.h> #include <projectexplorer/toolchainmanager.h> @@ -447,7 +448,8 @@ static ToolChain *iarToolChain(const FilePath &path, Id language) == BareMetal::Constants::IAREW_TOOLCHAIN_TYPEID; }); if (iarFactory) { - Toolchains detected = iarFactory->autoDetect(ToolchainDetector({}, {}, {})); + Toolchains detected = iarFactory->autoDetect( + {{}, DeviceManager::defaultDesktopDevice(), {}}); if (detected.isEmpty()) detected = iarFactory->detectForImport({path, language}); for (auto tc : detected) { diff --git a/src/plugins/projectexplorer/toolchainoptionspage.cpp b/src/plugins/projectexplorer/toolchainoptionspage.cpp index e0717ab780..0c87f248db 100644 --- a/src/plugins/projectexplorer/toolchainoptionspage.cpp +++ b/src/plugins/projectexplorer/toolchainoptionspage.cpp @@ -3,10 +3,11 @@ #include "toolchainoptionspage.h" -#include "toolchain.h" #include "abi.h" +#include "devicesupport/devicemanager.h" #include "projectexplorerconstants.h" #include "projectexplorertr.h" +#include "toolchain.h" #include "toolchainconfigwidget.h" #include "toolchainmanager.h" @@ -404,7 +405,7 @@ void ToolChainOptionsWidget::redetectToolchains() QSet<ToolChain *> toDelete; ToolChainManager::resetBadToolchains(); for (ToolChainFactory *f : ToolChainFactory::allToolChainFactories()) { - const ToolchainDetector detector(knownTcs, {}, {}); // FIXME: Pass device and search paths + const ToolchainDetector detector(knownTcs, DeviceManager::defaultDesktopDevice(), {}); // FIXME: Pass search paths for (ToolChain * const tc : f->autoDetect(detector)) { if (knownTcs.contains(tc) || toDelete.contains(tc)) continue; |