From 862145f8746a8d6ece18b60ec923ab3494f0e90d Mon Sep 17 00:00:00 2001 From: Alessandro Arzilli Date: Tue, 9 May 2017 19:32:16 +0200 Subject: [PATCH] proc: print runtime.curg._panic.arg on unrecovered-panic breakpoint (#833) You usually want to know the reason for the panic when a panic happens, it can be printed manually this is a small quality of life improvement. --- pkg/proc/gdbserial/gdbserver.go | 1 + pkg/proc/native/proc.go | 1 + 2 files changed, 2 insertions(+) diff --git a/pkg/proc/gdbserial/gdbserver.go b/pkg/proc/gdbserial/gdbserver.go index 3f79f501..3e65f826 100644 --- a/pkg/proc/gdbserial/gdbserver.go +++ b/pkg/proc/gdbserial/gdbserver.go @@ -267,6 +267,7 @@ func Connect(addr string, path string, pid int, attempts int) (*Process, error) bp, err := p.SetBreakpoint(panicpc, proc.UserBreakpoint, nil) if err == nil { bp.Name = "unrecovered-panic" + bp.Variables = []string{"runtime.curg._panic.arg"} bp.ID = -1 p.breakpointIDCounter-- } diff --git a/pkg/proc/native/proc.go b/pkg/proc/native/proc.go index 7026dc0e..4ff96b59 100644 --- a/pkg/proc/native/proc.go +++ b/pkg/proc/native/proc.go @@ -418,6 +418,7 @@ func initializeDebugProcess(dbp *Process, path string, attach bool) (*Process, e bp, err := dbp.SetBreakpoint(panicpc, proc.UserBreakpoint, nil) if err == nil { bp.Name = "unrecovered-panic" + bp.Variables = []string{"runtime.curg._panic.arg"} bp.ID = -1 dbp.breakpointIDCounter-- }