fix: register audio event handlers before setting src to avoid onloadedmetadata race
All checks were successful
Build and Push / build (push) Successful in 1m11s

This commit is contained in:
KansaiGaijin
2026-07-30 16:49:33 +12:00
parent f7eeae8469
commit e2e7adc8af

View File

@@ -74,12 +74,11 @@ export default function Speakers() {
return;
}
audio.src = blobUrl;
audio.load();
await new Promise<void>((resolve, reject) => {
audio.onloadedmetadata = () => resolve();
audio.onerror = () => reject(new Error("Audio decode failed"));
audio.src = blobUrl;
audio.load();
});
if (!cancelled) setAudioLoading(false);
@@ -181,6 +180,7 @@ export default function Speakers() {
onTimeUpdate={(e) => setCurrentTime(e.currentTarget.currentTime)}
onLoadedMetadata={(e) => setDuration(e.currentTarget.duration)}
controls
preload="auto"
className="w-full mb-3"
/>