From 0a79a82b04ef2524b608d0953524f565ecf7822c Mon Sep 17 00:00:00 2001 From: michael Date: Mon, 29 Dec 2025 10:59:30 -0600 Subject: [PATCH] fix: resolve race condition preventing captions in batch uploads MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The video event listener effect had an empty dependency array, causing it to run only once on mount. For batch uploads where downloads load slower, the video element wasn't rendered yet when the effect ran, so listeners were never attached. Adding currentVideoUrl as a dependency ensures the effect re-runs when the video becomes available. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 --- frontend/src/components/VideoReview/VideoReviewPlayer.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/frontend/src/components/VideoReview/VideoReviewPlayer.tsx b/frontend/src/components/VideoReview/VideoReviewPlayer.tsx index 5f40590..9667a66 100644 --- a/frontend/src/components/VideoReview/VideoReviewPlayer.tsx +++ b/frontend/src/components/VideoReview/VideoReviewPlayer.tsx @@ -209,7 +209,7 @@ export function VideoReviewPlayer({ job, downloads }: VideoReviewPlayerProps) { video.removeEventListener('pause', handlePause); clearTimeout(timeoutId); }; - }, []); // Only run once on mount - video element is stable + }, [currentVideoUrl]); // Re-run when video URL changes to ensure listeners are attached // Reset video when tab changes useEffect(() => {