forked from qt-creator/qt-creator
Debugger: Fix Android startup
Change-Id: I495412434ccffdb33528bbbe030c7a4bfa7e387c Reviewed-by: hjk <hjk121@nokiamail.com>
This commit is contained in:
@@ -846,6 +846,21 @@ void DebuggerEngine::notifyEngineRemoteSetupFinished(const RemoteSetupResult &re
|
|||||||
|
|
||||||
if (d->remoteSetupState() != RemoteSetupCancelled)
|
if (d->remoteSetupState() != RemoteSetupCancelled)
|
||||||
d->setRemoteSetupState(RemoteSetupSucceeded);
|
d->setRemoteSetupState(RemoteSetupSucceeded);
|
||||||
|
|
||||||
|
if (result.gdbServerPort != InvalidPid) {
|
||||||
|
QString &rc = d->m_startParameters.remoteChannel;
|
||||||
|
const int sepIndex = rc.lastIndexOf(QLatin1Char(':'));
|
||||||
|
if (sepIndex != -1) {
|
||||||
|
rc.replace(sepIndex + 1, rc.count() - sepIndex - 1,
|
||||||
|
QString::number(result.gdbServerPort));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (result.qmlServerPort != InvalidPort) {
|
||||||
|
d->m_startParameters.qmlServerPort = result.qmlServerPort;
|
||||||
|
d->m_startParameters.processArgs.replace(_("%qml_port%"), QString::number(result.qmlServerPort));
|
||||||
|
}
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
showMessage(_("NOTE: REMOTE SETUP FAILED: ") + result.reason);
|
showMessage(_("NOTE: REMOTE SETUP FAILED: ") + result.reason);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -476,6 +476,7 @@ void GdbRemoteServerEngine::notifyEngineRemoteServerRunning
|
|||||||
m_isMulti = true;
|
m_isMulti = true;
|
||||||
m_targetPid = inferiorPid;
|
m_targetPid = inferiorPid;
|
||||||
m_serverChannel = serverChannel;
|
m_serverChannel = serverChannel;
|
||||||
|
m_startAttempted = true;
|
||||||
startGdb();
|
startGdb();
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -489,26 +490,12 @@ void GdbRemoteServerEngine::notifyEngineRemoteSetupFinished(const RemoteSetupRes
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
DebuggerStartParameters ¶ms = isMasterEngine()
|
|
||||||
? startParameters() : masterEngine()->startParameters();
|
|
||||||
if (result.gdbServerPort != -1) {
|
|
||||||
QString &rc = params.remoteChannel;
|
|
||||||
const int sepIndex = rc.lastIndexOf(QLatin1Char(':'));
|
|
||||||
if (sepIndex != -1) {
|
|
||||||
rc.replace(sepIndex + 1, rc.count() - sepIndex - 1,
|
|
||||||
QString::number(result.gdbServerPort));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if (result.qmlServerPort != -1) {
|
|
||||||
params.qmlServerPort = result.qmlServerPort;
|
|
||||||
params.processArgs.replace(_("%qml_port%"), QString::number(result.qmlServerPort));
|
|
||||||
}
|
|
||||||
|
|
||||||
// TODO: Aren't these redundant?
|
// TODO: Aren't these redundant?
|
||||||
m_isMulti = params.multiProcess;
|
m_isMulti = startParameters().multiProcess;
|
||||||
m_targetPid = -1;
|
m_targetPid = -1;
|
||||||
m_serverChannel = params.remoteChannel.toLatin1();
|
m_serverChannel = startParameters().remoteChannel.toLatin1();
|
||||||
|
|
||||||
|
if (!m_startAttempted)
|
||||||
startGdb();
|
startGdb();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -91,6 +91,7 @@ private:
|
|||||||
|
|
||||||
QProcess m_uploadProc;
|
QProcess m_uploadProc;
|
||||||
bool m_isMulti;
|
bool m_isMulti;
|
||||||
|
bool m_startAttempted;
|
||||||
int m_targetPid;
|
int m_targetPid;
|
||||||
QByteArray m_serverChannel;
|
QByteArray m_serverChannel;
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -1342,7 +1342,9 @@ void LldbEngine::notifyEngineRemoteSetupFinished(const RemoteSetupResult &result
|
|||||||
QTC_ASSERT(state() == EngineSetupRequested, qDebug() << state());
|
QTC_ASSERT(state() == EngineSetupRequested, qDebug() << state());
|
||||||
DebuggerEngine::notifyEngineRemoteSetupFinished(result);
|
DebuggerEngine::notifyEngineRemoteSetupFinished(result);
|
||||||
|
|
||||||
if (!result.success) {
|
if (result.success) {
|
||||||
|
startLldb();
|
||||||
|
} else {
|
||||||
showMessage(_("ADAPTER START FAILED"));
|
showMessage(_("ADAPTER START FAILED"));
|
||||||
if (!result.reason.isEmpty()) {
|
if (!result.reason.isEmpty()) {
|
||||||
const QString title = tr("Adapter start failed");
|
const QString title = tr("Adapter start failed");
|
||||||
@@ -1351,21 +1353,6 @@ void LldbEngine::notifyEngineRemoteSetupFinished(const RemoteSetupResult &result
|
|||||||
notifyEngineSetupFailed();
|
notifyEngineSetupFailed();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (result.qmlServerPort != InvalidPort)
|
|
||||||
startParameters().qmlServerPort = result.qmlServerPort;
|
|
||||||
if (result.inferiorPid != InvalidPid) {
|
|
||||||
if (startParameters().startMode == AttachExternal) {
|
|
||||||
startParameters().attachPID = result.inferiorPid;
|
|
||||||
} else {
|
|
||||||
QString &rc = startParameters().remoteChannel;
|
|
||||||
const int sepIndex = rc.lastIndexOf(QLatin1Char(':'));
|
|
||||||
if (sepIndex != -1)
|
|
||||||
rc.replace(sepIndex + 1, rc.count() - sepIndex - 1,
|
|
||||||
QString::number(result.inferiorPid));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
startLldb();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
///////////////////////////////////////////////////////////////////////
|
///////////////////////////////////////////////////////////////////////
|
||||||
|
|||||||
Reference in New Issue
Block a user