forked from qt-creator/qt-creator
Debugger: Introduce a GdbEngine::usesOutputCollector helper
Change-Id: Ia148baeb602c8794d0b5075afd4259f1529d727f Reviewed-by: Christian Stenger <christian.stenger@qt.io>
This commit is contained in:
@@ -3808,7 +3808,7 @@ void GdbEngine::setupEngine()
|
|||||||
const DebuggerRunParameters &rp = runParameters();
|
const DebuggerRunParameters &rp = runParameters();
|
||||||
CommandLine gdbCommand{rp.debugger.executable};
|
CommandLine gdbCommand{rp.debugger.executable};
|
||||||
|
|
||||||
if (isPlainEngine()) {
|
if (usesOutputCollector()) {
|
||||||
if (!m_outputCollector.listen()) {
|
if (!m_outputCollector.listen()) {
|
||||||
handleAdapterStartFailed(tr("Cannot set up communication with child process: %1")
|
handleAdapterStartFailed(tr("Cannot set up communication with child process: %1")
|
||||||
.arg(m_outputCollector.errorString()));
|
.arg(m_outputCollector.errorString()));
|
||||||
@@ -4004,7 +4004,7 @@ void GdbEngine::setupEngine()
|
|||||||
|
|
||||||
void GdbEngine::handleGdbStartFailed()
|
void GdbEngine::handleGdbStartFailed()
|
||||||
{
|
{
|
||||||
if (isPlainEngine())
|
if (usesOutputCollector())
|
||||||
m_outputCollector.shutdown();
|
m_outputCollector.shutdown();
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -4299,6 +4299,11 @@ bool GdbEngine::isTermEngine() const
|
|||||||
return !isCoreEngine() && !isLocalAttachEngine() && !isRemoteEngine() && terminal();
|
return !isCoreEngine() && !isLocalAttachEngine() && !isRemoteEngine() && terminal();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bool GdbEngine::usesOutputCollector() const
|
||||||
|
{
|
||||||
|
return isPlainEngine() && !runParameters().debugger.executable.needsDevice();
|
||||||
|
}
|
||||||
|
|
||||||
void GdbEngine::claimInitialBreakpoints()
|
void GdbEngine::claimInitialBreakpoints()
|
||||||
{
|
{
|
||||||
CHECK_STATE(EngineRunRequested);
|
CHECK_STATE(EngineRunRequested);
|
||||||
@@ -4645,7 +4650,7 @@ QChar GdbEngine::mixedDisasmFlag() const
|
|||||||
|
|
||||||
void GdbEngine::shutdownEngine()
|
void GdbEngine::shutdownEngine()
|
||||||
{
|
{
|
||||||
if (isPlainEngine()) {
|
if (usesOutputCollector()) {
|
||||||
showMessage(QString("PLAIN ADAPTER SHUTDOWN %1").arg(state()));
|
showMessage(QString("PLAIN ADAPTER SHUTDOWN %1").arg(state()));
|
||||||
m_outputCollector.shutdown();
|
m_outputCollector.shutdown();
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -425,6 +425,8 @@ private: ////////// General Interface //////////
|
|||||||
void setupInferior();
|
void setupInferior();
|
||||||
void claimInitialBreakpoints();
|
void claimInitialBreakpoints();
|
||||||
|
|
||||||
|
bool usesOutputCollector() const;
|
||||||
|
|
||||||
Utils::QtcProcess m_gdbProc;
|
Utils::QtcProcess m_gdbProc;
|
||||||
OutputCollector m_outputCollector;
|
OutputCollector m_outputCollector;
|
||||||
QString m_errorString;
|
QString m_errorString;
|
||||||
|
|||||||
Reference in New Issue
Block a user