From 242ad7e52773a8d00f69c7004a1f4c853bb6b758 Mon Sep 17 00:00:00 2001 From: hjk <hjk121@nokiamail.com> Date: Thu, 12 Sep 2013 16:34:34 +0200 Subject: [PATCH] Debugger: Remove avoidable platform dependent compilation Less chance for compile fix ping pong. Change-Id: I2b055d1a12ba848f86d5246592ed7bb6d06fff51 Reviewed-by: Nicolas Arnaud-Cormos <nicolas@kdab.com> Reviewed-by: David Schulz <david.schulz@digia.com> --- src/libs/utils/qtcprocess.cpp | 4 +++- src/libs/utils/qtcprocess.h | 8 -------- src/plugins/debugger/gdb/gdbprocess.cpp | 2 -- src/plugins/debugger/gdb/gdbprocess.h | 2 -- src/plugins/debugger/gdb/remotegdbserveradapter.cpp | 4 +--- 5 files changed, 4 insertions(+), 16 deletions(-) diff --git a/src/libs/utils/qtcprocess.cpp b/src/libs/utils/qtcprocess.cpp index a0764fe678a..6a1e11b3126 100644 --- a/src/libs/utils/qtcprocess.cpp +++ b/src/libs/utils/qtcprocess.cpp @@ -736,13 +736,15 @@ void QtcProcess::terminate() QProcess::terminate(); } -#ifdef Q_OS_WIN void QtcProcess::interrupt() { +#ifdef Q_OS_WIN QTC_ASSERT(m_useCtrlCStub, return); EnumWindows(sendInterruptMessageToAllWindowsOfProcess_enumWnd, pid()->dwProcessId); +#endif } +#ifdef Q_OS_WIN // This function assumes that the resulting string will be quoted. // That's irrelevant if it does not contain quotes itself. static int quoteArgInternal(QString &ret, int bslashes) diff --git a/src/libs/utils/qtcprocess.h b/src/libs/utils/qtcprocess.h index 57dae3b5e6f..b980cb40c54 100644 --- a/src/libs/utils/qtcprocess.h +++ b/src/libs/utils/qtcprocess.h @@ -45,22 +45,16 @@ public: QtcProcess(QObject *parent = 0) : QProcess(parent), m_haveEnv(false) -#ifdef Q_OS_WIN , m_useCtrlCStub(false) -#endif {} void setEnvironment(const Environment &env) { m_environment = env; m_haveEnv = true; } void setCommand(const QString &command, const QString &arguments) { m_command = command; m_arguments = arguments; } -#ifdef Q_OS_WIN void setUseCtrlCStub(bool enabled) { m_useCtrlCStub = enabled; } -#endif void start(); void terminate(); -#ifdef Q_OS_WIN void interrupt(); -#endif enum SplitError { SplitOk = 0, //! All went just fine @@ -150,9 +144,7 @@ private: QString m_arguments; Environment m_environment; bool m_haveEnv; -#ifdef Q_OS_WIN bool m_useCtrlCStub; -#endif }; // Converts the Q_PID into a integer value. This is a no-op diff --git a/src/plugins/debugger/gdb/gdbprocess.cpp b/src/plugins/debugger/gdb/gdbprocess.cpp index 7a2ce016ede..4ee38308ba5 100644 --- a/src/plugins/debugger/gdb/gdbprocess.cpp +++ b/src/plugins/debugger/gdb/gdbprocess.cpp @@ -84,7 +84,6 @@ bool GdbProcess::interrupt() return interruptProcess(pid, GdbEngineType, &m_errorString); } -#ifdef Q_OS_WIN void GdbProcess::setUseCtrlCStub(bool enable) { m_gdbProc.setUseCtrlCStub(enable); @@ -94,7 +93,6 @@ void GdbProcess::winInterruptByCtrlC() { m_gdbProc.interrupt(); } -#endif QProcess::ProcessState GdbProcess::state() const { diff --git a/src/plugins/debugger/gdb/gdbprocess.h b/src/plugins/debugger/gdb/gdbprocess.h index b445da6dc47..dc356c608c7 100644 --- a/src/plugins/debugger/gdb/gdbprocess.h +++ b/src/plugins/debugger/gdb/gdbprocess.h @@ -50,10 +50,8 @@ public: qint64 write(const QByteArray &data); void kill(); bool interrupt(); -#ifdef Q_OS_WIN void setUseCtrlCStub(bool enable); void winInterruptByCtrlC(); -#endif QProcess::ProcessState state() const; QString errorString() const; diff --git a/src/plugins/debugger/gdb/remotegdbserveradapter.cpp b/src/plugins/debugger/gdb/remotegdbserveradapter.cpp index ca3e89ecd04..fe1913d64e6 100644 --- a/src/plugins/debugger/gdb/remotegdbserveradapter.cpp +++ b/src/plugins/debugger/gdb/remotegdbserveradapter.cpp @@ -435,10 +435,8 @@ void GdbRemoteServerEngine::interruptInferior2() if (debuggerCore()->boolSetting(TargetAsync)) { postCommand("-exec-interrupt", GdbEngine::Immediate, CB(handleInterruptInferior)); -#ifdef Q_OS_WIN - } else if (m_isQnxGdb) { + } else if (m_isQnxGdb && Utils::HostOsInfo::isWindowsHost()) { m_gdbProc->winInterruptByCtrlC(); -#endif } else { bool ok = m_gdbProc->interrupt(); if (!ok) { -- GitLab