RemoteGdb: Fix setup for attaching via dialog

Fix regression introduced in 9e8f935a while at the same time decoupling
the 'useServerStartScript' setting from whether the engine uses
requestRemoteSetup, or not.

Task-number: QTCREATORBUG-6841
Change-Id: I0850ec60e0f45ac66ba6736bcb9f75fdf73c1d23
Reviewed-by: Christian Kandeler <christian.kandeler@nokia.com>
This commit is contained in:
Kai Koehne
2012-01-23 14:57:51 +01:00
parent 3629b30e8d
commit 079fc49e91
6 changed files with 22 additions and 11 deletions

View File

@@ -95,7 +95,10 @@ void RemoteGdbServerAdapter::startAdapter()
m_uploadProc.waitForStarted();
}
}
m_engine->requestRemoteSetup();
if (startParameters().requestRemoteSetup)
m_engine->requestRemoteSetup();
else
handleSetupDone();
}
void RemoteGdbServerAdapter::uploadProcError(QProcess::ProcessError error)

View File

@@ -54,7 +54,16 @@ void RemotePlainGdbAdapter::startAdapter()
{
QTC_ASSERT(state() == EngineSetupRequested, qDebug() << state());
showMessage(QLatin1String("TRYING TO START ADAPTER"));
m_engine->requestRemoteSetup();
if (!startParameters().workingDirectory.isEmpty())
m_gdbProc.setWorkingDirectory(startParameters().workingDirectory);
if (startParameters().environment.size())
m_gdbProc.setEnvironment(startParameters().environment.toStringList());
if (startParameters().requestRemoteSetup)
m_engine->requestRemoteSetup();
else
handleRemoteSetupDone(startParameters().connParams.port, startParameters().qmlServerPort);
}
void RemotePlainGdbAdapter::setupInferior()
@@ -106,10 +115,6 @@ void RemotePlainGdbAdapter::handleRemoteSetupDone(int gdbServerPort, int qmlPort
if (qmlPort != -1)
startParameters().qmlServerPort = qmlPort;
if (!startParameters().workingDirectory.isEmpty())
m_gdbProc.setWorkingDirectory(startParameters().workingDirectory);
if (startParameters().environment.size())
m_gdbProc.setEnvironment(startParameters().environment.toStringList());
m_gdbProc.realStart(m_engine->startParameters().debuggerCommand,
QStringList() << QLatin1String("-i") << QLatin1String("mi"),
m_engine->startParameters().executable);