From ba71b3e9be62bb41a94d3e3833c791e60e1c7129 Mon Sep 17 00:00:00 2001 From: Kai Koehne <kai.koehne@digia.com> Date: Fri, 14 Dec 2012 12:34:15 +0100 Subject: [PATCH] Analyzer: Fix soft assert on startup Fix "SOFT ASSERT: str && *str" when using the analyzer for the first time / with nuked settings. Change-Id: Id6f0fc8031fc8d8a24d6d4c0badfbfbdc98974a9 Reviewed-by: hjk <qthjk@ovi.com> --- src/plugins/analyzerbase/analyzermanager.cpp | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/src/plugins/analyzerbase/analyzermanager.cpp b/src/plugins/analyzerbase/analyzermanager.cpp index 74348462084..74da58327ae 100644 --- a/src/plugins/analyzerbase/analyzermanager.cpp +++ b/src/plugins/analyzerbase/analyzermanager.cpp @@ -580,13 +580,16 @@ QAction *AnalyzerManagerPrivate::actionFromToolAndMode(IAnalyzerTool *tool, Star void AnalyzerManagerPrivate::selectSavedTool() { const QSettings *settings = ICore::settings(); - const Id lastActiveAction(settings->value(QLatin1String(LAST_ACTIVE_TOOL)).toString()); - foreach (QAction *action, m_actions) { - IAnalyzerTool *tool = m_toolFromAction.value(action); - StartMode mode = m_modeFromAction.value(action); - if (tool->actionId(mode) == lastActiveAction) { - selectTool(tool, mode); - return; + + if (settings->contains(QLatin1String(LAST_ACTIVE_TOOL))) { + const Id lastActiveAction(settings->value(QLatin1String(LAST_ACTIVE_TOOL)).toString()); + foreach (QAction *action, m_actions) { + IAnalyzerTool *tool = m_toolFromAction.value(action); + StartMode mode = m_modeFromAction.value(action); + if (tool->actionId(mode) == lastActiveAction) { + selectTool(tool, mode); + return; + } } } // fallback to first available tool -- GitLab