From d7c443c8930fdae24b1bbf98a9d6a2e7cf197cf2 Mon Sep 17 00:00:00 2001 From: Grail Finder Date: Wed, 31 Dec 2025 17:35:38 +0300 Subject: Fix: recreate ctx after cancel for subseq recordings to work --- extra/whisper_binary.go | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'extra/whisper_binary.go') diff --git a/extra/whisper_binary.go b/extra/whisper_binary.go index a016a30..31c083c 100644 --- a/extra/whisper_binary.go +++ b/extra/whisper_binary.go @@ -48,6 +48,11 @@ func (w *WhisperBinary) StartRecording() error { if w.recording { return errors.New("recording is already in progress") } + // If context is cancelled, create a new one for the next recording session + if w.ctx.Err() != nil { + w.logger.Debug("Context cancelled, creating new context") + w.ctx, w.cancel = context.WithCancel(context.Background()) + } // Temporarily redirect stderr to suppress ALSA warnings during PortAudio init origStderr, errDup := syscall.Dup(syscall.Stderr) if errDup != nil { -- cgit v1.2.3