forked from qt-creator/qt-creator
Debugger: Do not abort debugger on "Engine Ill" for coredump
Even without the stack, the user can find interesting stuff by exploring the memory, globals etc. Change-Id: I867d26b09a45425d97c4f3ef6d0528074c25e75f Reviewed-by: Orgad Shaneh <orgads@gmail.com> Reviewed-by: hjk <hjk@theqtcompany.com>
This commit is contained in:
@@ -244,18 +244,20 @@ void GdbCoreEngine::handleTargetCore(const DebuggerResponse &response)
|
|||||||
{
|
{
|
||||||
CHECK_STATE(EngineRunRequested);
|
CHECK_STATE(EngineRunRequested);
|
||||||
notifyEngineRunOkAndInferiorUnrunnable();
|
notifyEngineRunOkAndInferiorUnrunnable();
|
||||||
if (response.resultClass == ResultDone) {
|
|
||||||
showMessage(tr("Attached to core."), StatusBar);
|
showMessage(tr("Attached to core."), StatusBar);
|
||||||
|
if (response.resultClass == ResultError) {
|
||||||
|
// We'll accept any kind of error e.g. &"Cannot access memory at address 0x2abc2a24\n"
|
||||||
|
// Even without the stack, the user can find interesting stuff by exploring
|
||||||
|
// the memory, globals etc.
|
||||||
|
showStatusMessage(tr("Attach to core \"%1\" failed:").arg(runParameters().coreFile)
|
||||||
|
+ QLatin1Char('\n') + QString::fromLocal8Bit(response.data["msg"].data())
|
||||||
|
+ QLatin1Char('\n') + tr("Continuing nevertheless."));
|
||||||
|
}
|
||||||
// Due to the auto-solib-add off setting, we don't have any
|
// Due to the auto-solib-add off setting, we don't have any
|
||||||
// symbols yet. Load them in order of importance.
|
// symbols yet. Load them in order of importance.
|
||||||
reloadStack();
|
reloadStack();
|
||||||
reloadModulesInternal();
|
reloadModulesInternal();
|
||||||
runCommand({"p 5", NoFlags, CB(handleRoundTrip)});
|
runCommand({"p 5", NoFlags, CB(handleRoundTrip)});
|
||||||
return;
|
|
||||||
}
|
|
||||||
showStatusMessage(tr("Attach to core \"%1\" failed:").arg(runParameters().coreFile)
|
|
||||||
+ QLatin1Char('\n') + QString::fromLocal8Bit(response.data["msg"].data()));
|
|
||||||
notifyEngineIll();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void GdbCoreEngine::handleRoundTrip(const DebuggerResponse &response)
|
void GdbCoreEngine::handleRoundTrip(const DebuggerResponse &response)
|
||||||
|
|||||||
Reference in New Issue
Block a user