Ensure hardware breakpoints are cleared upon exit
This commit is contained in:
parent
b0ba87e5e1
commit
5da2e02068
@ -2,13 +2,14 @@ package cli
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
sys "golang.org/x/sys/unix"
|
||||
"io"
|
||||
"os"
|
||||
"os/exec"
|
||||
"os/signal"
|
||||
"strings"
|
||||
|
||||
sys "golang.org/x/sys/unix"
|
||||
|
||||
"github.com/derekparker/delve/command"
|
||||
"github.com/derekparker/delve/goreadline"
|
||||
"github.com/derekparker/delve/proctl"
|
||||
@ -98,6 +99,15 @@ func handleExit(dbp *proctl.DebuggedProcess, status int) {
|
||||
}
|
||||
answer := strings.TrimSuffix(*answerp, "\n")
|
||||
|
||||
for _, bp := range dbp.HWBreakPoints {
|
||||
if bp == nil {
|
||||
continue
|
||||
}
|
||||
if _, err := dbp.Clear(bp.Addr); err != nil {
|
||||
fmt.Printf("Can't clear breakpoint @%x: %s\n", bp.Addr, err)
|
||||
}
|
||||
}
|
||||
|
||||
for pc := range dbp.BreakPoints {
|
||||
if _, err := dbp.Clear(pc); err != nil {
|
||||
fmt.Printf("Can't clear breakpoint @%x: %s\n", pc, err)
|
||||
|
Loading…
Reference in New Issue
Block a user