From 7cee3aa1f14f2497956cfd30ad11fc6869ca6053 Mon Sep 17 00:00:00 2001 From: "Paul Gauthier (aider)" Date: Fri, 14 Mar 2025 19:07:53 -0700 Subject: [PATCH] fix: prevent duplicate speech synthesis fallback in recording.js --- aider/website/_includes/recording.js | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/aider/website/_includes/recording.js b/aider/website/_includes/recording.js index f762582b0..d7962fc09 100644 --- a/aider/website/_includes/recording.js +++ b/aider/website/_includes/recording.js @@ -211,17 +211,26 @@ document.addEventListener('DOMContentLoaded', function() { // Create and play audio const audio = new Audio(audioPath); + // Flag to track if we've already used the TTS fallback + let fallbackUsed = false; + // Error handling with fallback to browser TTS audio.onerror = () => { console.warn(`Failed to load audio: ${audioPath}`); - useBrowserTTS(text); + if (!fallbackUsed) { + fallbackUsed = true; + useBrowserTTS(text); + } }; // Play the audio audio.play().catch(e => { console.warn(`Error playing audio: ${e.message}`); // Also fall back to browser TTS if play() fails - useBrowserTTS(text); + if (!fallbackUsed) { + fallbackUsed = true; + useBrowserTTS(text); + } }); }