diff --git a/src/plugins/debugger/gdbengine.cpp b/src/plugins/debugger/gdbengine.cpp
index 7f99a0a9b3e2e170c619a38b58038847a27cc2e6..6e68184913d71bffc653186d9adf8a2c5680f97d 100644
--- a/src/plugins/debugger/gdbengine.cpp
+++ b/src/plugins/debugger/gdbengine.cpp
@@ -1588,7 +1588,9 @@ bool GdbEngine::startDebugger()
         }
     }
 
-    if (q->startMode() == q->startInternal) {
+    if (q->startMode() == q->attachExternal) {
+        sendCommand("attach " + QString::number(q->m_attachedPID));
+    } else {
         emit gdbInputAvailable(QString(), QString());
         sendCommand("-file-exec-and-symbols " + fileName, GdbFileExecAndSymbols);
         //sendCommand("file " + fileName, GdbFileExecAndSymbols);
@@ -1602,20 +1604,6 @@ bool GdbEngine::startDebugger()
         sendCommand("x/2i " + startSymbolName(), GdbStart);
     }
 
-    if (q->startMode() == q->attachExternal) {
-        sendCommand("attach " + QString::number(q->m_attachedPID));
-    }
-
-    if (q->startMode() == q->startExternal) {
-        //sendCommand("-file-exec-and-symbols " + fileName, GdbFileExecAndSymbols);
-        sendCommand("file " + fileName, GdbFileExecAndSymbols);
-        #ifdef Q_OS_MAC
-        sendCommand("sharedlibrary apply-load-rules all");
-        #endif
-        //sendCommand("-file-list-exec-source-files", GdbQuerySources);
-        //sendCommand("-gdb-set stop-on-solib-events 1");
-    }
-
     sendCommand("-data-list-register-names", RegisterListNames);
 
     // set all to "pending"