Skip to content

[gdbplugin] fixes for multiple and moving breakpoints

This MR fixes 3 related issues with break-points in the GDB plugin:

  • More than one break-point in the same line: Since the debugger can move the requested break-point to the nearest line with a statement, there can be more than one line-based break-point at the same location.

    This change is to ensure all the replicas are removed at once, because the request is asking for line and not break-point ids, and to prevent the function `toggleBreakpoint' to be confused.

    A document should keep a line highlighted if there are at least one breakpoint in the line.

  • Line info were no properly captured from breakpoint objects when using lldb-mi because the field "pending" is provided even if the document has been resolved.

    This also avoids capturing empty file names (lldb-mi returns "??" and "??/??" when the file name could not be resolved).

  • When using GDB/LLDM-MI, break-point location was not correctly updated in the document in response to a break-point modification (for example, after the debugger resolved a pending break-point).

Merge request reports