diff --git a/tools/projmgr/src/ProjMgrRpcServer.cpp b/tools/projmgr/src/ProjMgrRpcServer.cpp index 95a56902d..140bcd28c 100644 --- a/tools/projmgr/src/ProjMgrRpcServer.cpp +++ b/tools/projmgr/src/ProjMgrRpcServer.cpp @@ -304,6 +304,7 @@ RpcArgs::SuccessResult RpcHandler::LoadPacks(void) { RpcArgs::SuccessResult result = {false}; m_manager.Clear(); m_solutionLoaded = false; + ProjMgrKernel::Get()->GetGlobalModel()->Clear(); m_worker.InitializeModel(); m_worker.SetLoadPacksPolicy(LoadPacksPolicy::ALL); result.success = m_worker.LoadAllRelevantPacks(); diff --git a/tools/projmgr/src/ProjMgrWorker.cpp b/tools/projmgr/src/ProjMgrWorker.cpp index 00c6be800..575603975 100644 --- a/tools/projmgr/src/ProjMgrWorker.cpp +++ b/tools/projmgr/src/ProjMgrWorker.cpp @@ -74,7 +74,7 @@ bool ProjMgrWorker::PushImageOnlyTargetType(const string& targetType, const vect } } CollectionUtils::PushBackUniquely(imageOnlyTargetTypes, targetType); - return true; + return true; } void ProjMgrWorker::AddImageOnlyContext() { @@ -522,6 +522,7 @@ bool ProjMgrWorker::CollectAllRequiredPdscFiles() { } bool ProjMgrWorker::LoadAllRelevantPacks() { + m_loadedPacks.clear(); // the list will be updated, it should not contain dangling pointers // Get required pdsc files std::list pdscFiles; for (const auto& context : m_selectedContexts) { @@ -6064,7 +6065,7 @@ bool ProjMgrWorker::CheckPackVerAndCollectRelNotes(std::vector& res vector checkPackResults; for (const auto& [packId, packInfo] : usedPacks) { - const string& currentVersion = packInfo.first; + const string& currentVersion = packInfo.first; auto latestPack = latestPacks.find(packId); if (latestPack == latestPacks.end()) { checkPackResults.push_back(packId + "@" + currentVersion + " (not found in CMSIS pack root or project-specified pack paths)");