From bad813e3ccfd74ac797f309d19a91398885ffa09 Mon Sep 17 00:00:00 2001 From: David de Regt Date: Mon, 23 Dec 2024 16:56:31 -0700 Subject: [PATCH] fix: Adding stack trace to panic catch errors --- task.go | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/task.go b/task.go index 6814073..a2f900d 100644 --- a/task.go +++ b/task.go @@ -3,6 +3,7 @@ package pond import ( "errors" "fmt" + "runtime/debug" "sync" ) @@ -62,7 +63,7 @@ func wrapTask[R any, C func(error) | func(R, error)](task any, callback C) func( func invokeTask[R any](task any) (output R, err error) { defer func() { if p := recover(); p != nil { - err = fmt.Errorf("%w: %v", ErrPanic, p) + err = fmt.Errorf("%w: %+v, %s", ErrPanic, p, string(debug.Stack())) return } }()