forked from qt-creator/qt-creator
Valgrind: Extend and use new DebuggerRunTool interface
Change-Id: I5e015a484e67175be12d538e7f814d61001ad7bb Reviewed-by: hjk <hjk@qt.io>
This commit is contained in:
@@ -163,18 +163,16 @@ QStringList MemcheckToolRunner::suppressionFiles() const
|
||||
|
||||
void MemcheckToolRunner::startDebugger(qint64 valgrindPid)
|
||||
{
|
||||
Debugger::DebuggerStartParameters sp;
|
||||
sp.inferior = runnable().as<StandardRunnable>();
|
||||
sp.startMode = Debugger::AttachToRemoteServer;
|
||||
sp.displayName = QString("VGdb %1").arg(valgrindPid);
|
||||
sp.remoteChannel = QString("| vgdb --pid=%1").arg(valgrindPid);
|
||||
sp.useContinueInsteadOfRun = true;
|
||||
sp.expectedSignals.append("SIGTRAP");
|
||||
auto debugger = new Debugger::DebuggerRunTool(runControl());
|
||||
debugger->setStartMode(Debugger::AttachToRemoteServer);
|
||||
debugger->setRunControlName(QString("VGdb %1").arg(valgrindPid));
|
||||
debugger->setGdbServerChannel(QString("| vgdb --pid=%1").arg(valgrindPid));
|
||||
debugger->setUseContinueInsteadOfRun(true);
|
||||
debugger->addExpectedSignal("SIGTRAP");
|
||||
|
||||
auto gdbWorker = new Debugger::DebuggerRunTool(runControl());
|
||||
gdbWorker->setStartParameters(sp);
|
||||
gdbWorker->initiateStart();
|
||||
connect(runControl(), &RunControl::stopped, gdbWorker, &RunControl::deleteLater);
|
||||
connect(runControl(), &RunControl::stopped, debugger, &RunControl::deleteLater);
|
||||
|
||||
debugger->initiateStart();
|
||||
}
|
||||
|
||||
void MemcheckToolRunner::appendLog(const QByteArray &data)
|
||||
|
||||
Reference in New Issue
Block a user