Commit bb1ebd09 authored by hjk's avatar hjk

debugger: handle error triggered by "-exec-finish" triggered in the outermost

frame
parent bf501dca
......@@ -790,15 +790,22 @@ void GdbEngine::handleResultRecord(const GdbResponse &response)
// In theory this should not happen, in practice it does.
debugMessage(_("COOKIE FOR TOKEN %1 ALREADY EATEN. "
"TWO RESPONSES FOR ONE COMMAND?").arg(token));
// Handle a case known to occur on Linux/gdb 6.8 when debugging moc
// with helpers enabled. In this case we get a second response with
// msg="Cannot find new threads: generic error"
if (response.resultClass == GdbResultError) {
QByteArray msg = response.data.findChild("msg").data();
showMessageBox(QMessageBox::Critical,
tr("Executable failed"), QString::fromLocal8Bit(msg));
showStatusMessage(tr("Process failed to start."));
shutdown();
// Handle a case known to occur on Linux/gdb 6.8 when debugging moc
// with helpers enabled. In this case we get a second response with
// msg="Cannot find new threads: generic error"
if (msg == "Cannot find new threads: generic error")
shutdown();
// Handle a case known to appear on gdb 6.4 symbianelf when
// the stack is cut due to access to protected memory.
if (msg == "\"finish\" not meaningful in the outermost frame.") {
setState(InferiorStopping);
setState(InferiorStopped);
}
}
return;
}
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment