From 9371868b1451dd5b26f40e68c165fe10e5c91d19 Mon Sep 17 00:00:00 2001 From: Alex P Date: Mon, 17 Nov 2025 22:17:02 +0200 Subject: [PATCH] Fix: increase Opus buffer size to 1500 bytes and add bounds check --- internal/audio/cgo_source.go | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/internal/audio/cgo_source.go b/internal/audio/cgo_source.go index fc4b80b4..7a874213 100644 --- a/internal/audio/cgo_source.go +++ b/internal/audio/cgo_source.go @@ -21,7 +21,7 @@ import ( ) const ( - ipcMaxFrameSize = 1024 + ipcMaxFrameSize = 1500 ) type CgoSource struct { @@ -184,6 +184,10 @@ func (c *CgoSource) ReadMessage() (uint8, []byte, error) { return 0, nil, nil } + if int(opusSize) > len(c.opusBuf) { + return 0, nil, fmt.Errorf("opus packet too large: %d > %d", opusSize, len(c.opusBuf)) + } + return ipcMsgTypeOpus, c.opusBuf[:opusSize], nil }