Add thread-id field in *stopped notification (MI)
Summary: Add thread-id field in *stopped notification (MI) + tests All tests pass on OS X Reviewers: zturner, clayborg, abidh Reviewed By: clayborg Subscribers: lldb-commits, zturner, clayborg, abidh Differential Revision: http://reviews.llvm.org/D7501 llvm-svn: 228681
This commit is contained in:
parent
e35908b18f
commit
c4f7fdf571
|
@ -63,7 +63,10 @@ class MiNotificationTestCase(lldbmi_testcase.MiTestCaseBase):
|
|||
self.expect("\^done")
|
||||
|
||||
# Test that *stopped is printed
|
||||
self.expect("\*stopped.*")
|
||||
# Note that message is different in Darwin and Linux:
|
||||
# Darwin: "*stopped,reason=\"signal-received\",signal=\"17\",thread-id=\"1\",stopped-threads=\"all\""
|
||||
# Linux: "*stopped,reason=\"end-stepping-range\",frame={addr=\"0x[0-9a-f]+\",func=\"??\",args=\[\],file=\"??\",fullname=\"??\",line=\"-1\"},thread-id=\"1\",stopped-threads=\"all\"
|
||||
self.expect("\*stopped,reason=\"(signal-received|end-stepping-range)\",.+,thread-id=\"1\",stopped-threads=\"all\"")
|
||||
|
||||
# Run to main to make sure we have not exited the application
|
||||
self.runCmd("-break-insert -f main")
|
||||
|
@ -108,7 +111,7 @@ class MiNotificationTestCase(lldbmi_testcase.MiTestCaseBase):
|
|||
self.expect("\^done")
|
||||
|
||||
# Test that *stopped is printed
|
||||
self.expect("\*stopped,reason=\"signal-received\",signal=\"17\",stopped-threads=\"all\"")
|
||||
self.expect("\*stopped,reason=\"signal-received\",signal=\"17\",thread-id=\"1\",stopped-threads=\"all\"")
|
||||
|
||||
# Exit
|
||||
self.runCmd("-gdb-exit")
|
||||
|
|
|
@ -911,7 +911,7 @@ CMICmnLLDBDebuggerHandleEvents::HandleProcessEventStopSignal(bool &vwrbShouldBrk
|
|||
}
|
||||
default:
|
||||
{
|
||||
// MI print "*stopped,reason=\"signal-received\",signal=\"%lld\",stopped-threads=\"all\""
|
||||
// MI print "*stopped,reason=\"signal-received\",signal=\"%lld\",thread-id=\"%d\",stopped-threads=\"all\""
|
||||
const CMICmnMIValueConst miValueConst("signal-received");
|
||||
const CMICmnMIValueResult miValueResult("reason", miValueConst);
|
||||
CMICmnMIOutOfBandRecord miOutOfBandRecord(CMICmnMIOutOfBandRecord::eOutOfBand_Stopped, miValueResult);
|
||||
|
@ -919,9 +919,13 @@ CMICmnLLDBDebuggerHandleEvents::HandleProcessEventStopSignal(bool &vwrbShouldBrk
|
|||
const CMICmnMIValueConst miValueConst2(strReason);
|
||||
const CMICmnMIValueResult miValueResult2("signal", miValueConst2);
|
||||
bOk = miOutOfBandRecord.Add(miValueResult2);
|
||||
const CMICmnMIValueConst miValueConst3("all");
|
||||
const CMICmnMIValueResult miValueResult3("stopped-threads", miValueConst3);
|
||||
const CMIUtilString strThreadId(CMIUtilString::Format("%d", sbProcess.GetSelectedThread().GetIndexID()));
|
||||
const CMICmnMIValueConst miValueConst3(strThreadId);
|
||||
const CMICmnMIValueResult miValueResult3("thread-id", miValueConst3);
|
||||
bOk = bOk && miOutOfBandRecord.Add(miValueResult3);
|
||||
const CMICmnMIValueConst miValueConst4("all");
|
||||
const CMICmnMIValueResult miValueResult4("stopped-threads", miValueConst4);
|
||||
bOk = bOk && miOutOfBandRecord.Add(miValueResult4);
|
||||
bOk = bOk && MiOutOfBandRecordToStdout(miOutOfBandRecord);
|
||||
bOk = bOk && TextToStdout("(gdb)");
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue