From 0e6a217c143dcbf1c368768ab22e267493d99139 Mon Sep 17 00:00:00 2001 From: Egor Aristov Date: Sun, 16 Nov 2025 10:21:06 +0300 Subject: [PATCH] panic recover handleCall --- lib/golang/lib.go | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/lib/golang/lib.go b/lib/golang/lib.go index ea9190e..abb1ae9 100644 --- a/lib/golang/lib.go +++ b/lib/golang/lib.go @@ -110,6 +110,12 @@ func (ipc *ipcCommon) handleCall(msg Message) { ipc.processingCalls.Add(1) defer ipc.processingCalls.Add(-1) + defer func() { + if err := recover(); err != nil { + ipc.sendResponse(msg.Id, nil, fmt.Errorf("handle call panicked: %s", err)) + } + }() + method, err := ipc.findMethod(msg.Method) if err != nil { ipc.sendResponse(msg.Id, nil, fmt.Errorf("find method: %w", err))