forked from qt-creator/qt-creator
Debugger[CDB]: Refactor breakpoint handling.
Add a command to list breakpoints enabling id access. Implemented breakpoint handling similar to gdb using breakpoint ids (no longer delete and re-set all breakpoints on a change). Save the module that is reported back in the session so that it can be re-used for the next start. Keep a per-debugger-session cache of fileName->Module for adding breakpoints to accelerate setting breakpoints in the same file. Polish the breakpoint tooltip.
This commit is contained in:
@@ -198,17 +198,6 @@ void ExtensionContext::notifyIdleCommand(CIDebugClient *client)
|
||||
} else {
|
||||
str << ",stack=" << stackInfo;
|
||||
}
|
||||
// Report breakpoints
|
||||
const StopReasonMap::const_iterator rit = stopReasons.find(stopReasonKeyC);
|
||||
if (rit != stopReasons.end() && rit->second == breakPointStopReasonC) {
|
||||
const std::string breakpoints = gdbmiBreakpoints(exc.control(), exc.symbols(),
|
||||
false, false, &errorMessage);
|
||||
if (breakpoints.empty()) {
|
||||
str << ",breakpointserror=" << gdbmiStringFormat(errorMessage);
|
||||
} else {
|
||||
str << ",breakpoints=" << breakpoints;
|
||||
}
|
||||
}
|
||||
str << '}';
|
||||
reportLong('E', 0, "session_idle", str.str());
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user