mirror of
https://github.com/go-delve/delve.git
synced 2025-11-01 12:01:35 +08:00
proc: do not assign temporary breakpoint IDs (#2650)
Internal breakpoints do not need IDs and assigning them from a counter separate from the user ID counter can be a cause of confusion. If a user breakpoint is overlayed on top of a pre-existing internal breakpoint the temporary ID will be surfaced as if it was a user ID, possibly conflicting with another user ID. If a temporary breakpoint is overlayed on top of a pre-existing user breakpoint and the user breakpoint is first deleted and then re-created, the user ID will be resurrected along with the breakpoint, instead of allocating a fresh one. This change removes internal breakpoint IDs entirely, only user breakpoints receive an ID.
This commit is contained in:
committed by
GitHub
parent
b8f8cd82a6
commit
a97da22762
@ -325,7 +325,7 @@ func (t *Target) Detach(kill bool) error {
|
||||
}
|
||||
for _, bp := range t.Breakpoints().M {
|
||||
if bp != nil {
|
||||
_, err := t.ClearBreakpoint(bp.Addr)
|
||||
err := t.ClearBreakpoint(bp.Addr)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user