diff --git a/src/plugins/debugger/debuggerrunner.cpp b/src/plugins/debugger/debuggerrunner.cpp
index 7a6f2ce6299f16f8eff3c517291568a2dc588b06..738e96a17b27246299ae61586063e9e8c5d8d033 100644
--- a/src/plugins/debugger/debuggerrunner.cpp
+++ b/src/plugins/debugger/debuggerrunner.cpp
@@ -125,7 +125,6 @@ DebuggerRunControl::DebuggerRunControl(DebuggerManager *manager,
        const QSharedPointer<DebuggerStartParameters> &startParameters,
        QSharedPointer<ApplicationRunConfiguration> runConfiguration)
   : RunControl(runConfiguration),
-    m_mode(mode),
     m_startParameters(startParameters),
     m_manager(manager),
     m_running(false)
@@ -147,13 +146,14 @@ DebuggerRunControl::DebuggerRunControl(DebuggerManager *manager,
 
     // Enhance parameters by info from the project, but do not clobber
     // arguments given in the dialogs
+    m_startParameters->startMode = mode;
     if (m_startParameters->executable.isEmpty())
         m_startParameters->executable = runConfiguration->executable();
     if (m_startParameters->environment.empty())
         m_startParameters->environment = runConfiguration->environment().toStringList();
     if (m_startParameters->workingDir.isEmpty())
         m_startParameters->workingDir = runConfiguration->workingDirectory();
-    if (m_mode != StartExternal)
+    if (m_startParameters->startMode != StartExternal)
         m_startParameters->processArgs = runConfiguration->commandLineArguments();
     switch (m_startParameters->toolChainType) {
     case ProjectExplorer::ToolChain::UNKNOWN:
diff --git a/src/plugins/debugger/debuggerrunner.h b/src/plugins/debugger/debuggerrunner.h
index ec43678e94ecc4014afa815121e2c1086e290340..a7e08eea367d6a3cdccab88a1b7bb0ab2fcd68f6 100644
--- a/src/plugins/debugger/debuggerrunner.h
+++ b/src/plugins/debugger/debuggerrunner.h
@@ -91,8 +91,6 @@ public:
                        const DebuggerStartParametersPtr &startParamters,
                        ApplicationRunConfigurationPtr runConfiguration);
 
-    DebuggerStartMode startMode() const { return m_mode; }
-
     // ProjectExplorer::RunControl
     virtual void start();
     virtual void stop();
@@ -108,7 +106,6 @@ private slots:
     void slotAddToOutputWindowInline(const QString &output);
 
 private:
-    const DebuggerStartMode m_mode;
     DebuggerStartParametersPtr m_startParameters;
     DebuggerManager *m_manager;
     bool m_running;