diff --git a/src/plugins/debugger/debuggerplugin.cpp b/src/plugins/debugger/debuggerplugin.cpp
index 09f61b81e4b84729a52c5067a11f9339f9c1d643..6ca88c951fae72c7a924ea8e6e48078e703f0066 100644
--- a/src/plugins/debugger/debuggerplugin.cpp
+++ b/src/plugins/debugger/debuggerplugin.cpp
@@ -1150,11 +1150,17 @@ void DebuggerPlugin::readSettings()
 
 void DebuggerPlugin::onModeChanged(IMode *mode)
 {
+     // FIXME: This one gets always called, even if switching between modes
+     //        different then the debugger mode. E.g. Welcome and Help mode and
+     //        also on shutdown.
+
     if (mode != m_debugMode) {
-        m_manager->modeVisibilityChanged(false);
+        if (m_manager)
+            m_manager->modeVisibilityChanged(false);
         return;
     }
-    m_manager->modeVisibilityChanged(true);
+    if (m_manager)
+        m_manager->modeVisibilityChanged(true);
 
     EditorManager *editorManager = EditorManager::instance();