diff --git a/src/plugins/debugger/gdb/gdbengine.cpp b/src/plugins/debugger/gdb/gdbengine.cpp index 7a005ec5f5e1f96f6ae47116db11a6edc3c4a971..3fe00adf56e2a09bb8a30b69892e07db8be02fba 100644 --- a/src/plugins/debugger/gdb/gdbengine.cpp +++ b/src/plugins/debugger/gdb/gdbengine.cpp @@ -961,10 +961,19 @@ void GdbEngine::handleResultRecord(GdbResponse *response) response->resultClass != ((cmd.flags & RunRequest) ? GdbResultRunning : (cmd.flags & ExitRequest) ? GdbResultExit : GdbResultDone)) { - QByteArray rsp = GdbResponse::stringFromResultClass(response->resultClass); - rsp = "UNEXPECTED RESPONSE " + rsp + " TO COMMAND" + cmd.command; - qWarning() << rsp << " AT " __FILE__ ":" STRINGIFY(__LINE__); - debugMessage(_(rsp)); +#ifdef Q_OS_WIN + // Ignore spurious 'running' responses to 'attach' + const bool warning = !(m_startParameters->startMode == AttachExternal + && cmd.command.startsWith("attach")); +#else + const bool warning = true; +#endif + if (warning) { + QByteArray rsp = GdbResponse::stringFromResultClass(response->resultClass); + rsp = "UNEXPECTED RESPONSE '" + rsp + "' TO COMMAND '" + cmd.command + "'"; + qWarning() << rsp << " AT " __FILE__ ":" STRINGIFY(__LINE__); + debugMessage(_(rsp)); + } } else { if (cmd.callback) (this->*cmd.callback)(*response);