From a37d15b4e56b807b6b175f93bb89cc83418c2ada Mon Sep 17 00:00:00 2001 From: Vincent Koc Date: Fri, 31 Jul 2026 11:25:41 +0800 Subject: [PATCH] fix(xai): reject oversized audio before copying --- extensions/xai/realtime-voice-bridge.ts | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/extensions/xai/realtime-voice-bridge.ts b/extensions/xai/realtime-voice-bridge.ts index b3e1e9e72f29..7edab1e6eaf2 100644 --- a/extensions/xai/realtime-voice-bridge.ts +++ b/extensions/xai/realtime-voice-bridge.ts @@ -478,14 +478,13 @@ export class XaiRealtimeVoiceBridge extends XaiRealtimeVoiceEvents implements Re } private enqueuePendingAudio(audio: Buffer): void { - const queuedAudio = Buffer.from(audio); if ( this.pendingAudio.length >= XaiRealtimeVoiceBridge.MAX_PENDING_AUDIO_CHUNKS || - this.pendingAudioBytes + queuedAudio.byteLength > - XaiRealtimeVoiceBridge.MAX_PENDING_AUDIO_BYTES + this.pendingAudioBytes + audio.byteLength > XaiRealtimeVoiceBridge.MAX_PENDING_AUDIO_BYTES ) { return; } + const queuedAudio = Buffer.from(audio); this.pendingAudio.push(queuedAudio); this.pendingAudioBytes += queuedAudio.byteLength; }