mirror of
https://github.com/go-delve/delve.git
synced 2025-11-03 22:08:33 +08:00
Only detach if not killing process
This commit is contained in:
@ -135,22 +135,22 @@ func (d *Debugger) Run() error {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Detach
|
|
||||||
if !d.process.Exited() {
|
|
||||||
if err := sys.PtraceDetach(d.process.Pid); err == nil {
|
|
||||||
log.Print("detached from process")
|
|
||||||
} else {
|
|
||||||
log.Printf("couldn't detach from process: %s", err)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// Kill the process if requested
|
// Kill the process if requested
|
||||||
if s.KillProcess {
|
if s.KillProcess {
|
||||||
if err := d.process.Process.Kill(); err == nil {
|
if err := proctl.PtraceCont(d.process.Pid, int(sys.SIGINT)); err == nil {
|
||||||
log.Print("killed process")
|
log.Print("killed process")
|
||||||
} else {
|
} else {
|
||||||
log.Printf("couldn't kill process: %s", err)
|
log.Printf("couldn't kill process: %s", err)
|
||||||
}
|
}
|
||||||
|
} else {
|
||||||
|
// Detach
|
||||||
|
if !d.process.Exited() {
|
||||||
|
if err := sys.PtraceDetach(d.process.Pid); err == nil {
|
||||||
|
log.Print("detached from process")
|
||||||
|
} else {
|
||||||
|
log.Printf("couldn't detach from process: %s", err)
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
|
|||||||
Reference in New Issue
Block a user