From 4b1540e5a730e2e4f0e9c9c8203045fd1f59dca5 Mon Sep 17 00:00:00 2001
From: Friedemann Kleint <Friedemann.Kleint@nokia.com>
Date: Wed, 18 Aug 2010 16:39:53 +0200
Subject: [PATCH] Debugger/Windows[gdb]: Fix Attach to running (gui) process.

Initial-patch-by: hjk
Task-number: QTCREATORBUG-2084
---
 src/plugins/debugger/debuggermanager.cpp      | 3 ++-
 src/plugins/debugger/gdb/attachgdbadapter.cpp | 2 +-
 2 files changed, 3 insertions(+), 2 deletions(-)

diff --git a/src/plugins/debugger/debuggermanager.cpp b/src/plugins/debugger/debuggermanager.cpp
index 6bfa9b973e0..f7ccd6ad4b2 100644
--- a/src/plugins/debugger/debuggermanager.cpp
+++ b/src/plugins/debugger/debuggermanager.cpp
@@ -1731,7 +1731,8 @@ static bool isAllowedTransition(int from, int to)
 
     case InferiorStarting:
         return to == InferiorRunningRequested || to == InferiorStopped
-            || to == InferiorStartFailed || to == InferiorUnrunnable;
+            || to == InferiorStartFailed || to == InferiorUnrunnable
+            || to == InferiorRunning;
     case InferiorStartFailed:
         return to == EngineShuttingDown;
 
diff --git a/src/plugins/debugger/gdb/attachgdbadapter.cpp b/src/plugins/debugger/gdb/attachgdbadapter.cpp
index 6ef72a1b290..821afb391f4 100644
--- a/src/plugins/debugger/gdb/attachgdbadapter.cpp
+++ b/src/plugins/debugger/gdb/attachgdbadapter.cpp
@@ -78,7 +78,7 @@ void AttachGdbAdapter::startInferior()
 void AttachGdbAdapter::handleAttach(const GdbResponse &response)
 {
     QTC_ASSERT(state() == InferiorStarting, qDebug() << state());
-    if (response.resultClass == GdbResultDone) {
+    if (response.resultClass == GdbResultDone || response.resultClass == GdbResultRunning) {
         setState(InferiorStopped);
         debugMessage(_("INFERIOR ATTACHED"));
         showStatusMessage(msgAttachedToStoppedInferior());
-- 
GitLab