From c2dddf0dfeafd121809fa1989e3b6e712a977f41 Mon Sep 17 00:00:00 2001 From: Boris Nagaev Date: Sun, 16 Mar 2025 18:21:32 -0300 Subject: [PATCH] loopin: use context.WithoutCancel in cleanup Ensure that MuSig2 cleanup does happen even if a context expires. --- staticaddr/loopin/actions.go | 4 +++- staticaddr/loopin/manager.go | 3 ++- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/staticaddr/loopin/actions.go b/staticaddr/loopin/actions.go index 54d697eb..ca8767b2 100644 --- a/staticaddr/loopin/actions.go +++ b/staticaddr/loopin/actions.go @@ -418,7 +418,9 @@ func (f *FSM) cleanUpSessions(ctx context.Context, sessions []*input.MuSig2SessionInfo) { for _, s := range sessions { - err := f.cfg.Signer.MuSig2Cleanup(ctx, s.SessionID) + err := f.cfg.Signer.MuSig2Cleanup( + context.WithoutCancel(ctx), s.SessionID, + ) if err != nil { f.Warnf("unable to cleanup musig2 session: %v", err) } diff --git a/staticaddr/loopin/manager.go b/staticaddr/loopin/manager.go index 15065770..cbe6d9ce 100644 --- a/staticaddr/loopin/manager.go +++ b/staticaddr/loopin/manager.go @@ -360,7 +360,8 @@ func (m *Manager) handleLoopInSweepReq(ctx context.Context, // We'll clean up the session if we don't get to signing. defer func() { err = m.cfg.Signer.MuSig2Cleanup( - ctx, musig2Session.SessionID, + context.WithoutCancel(ctx), + musig2Session.SessionID, ) if err != nil { log.Errorf("Error cleaning up musig2 session: "+