diff options
| author | Maze Winther <mazewinther@gmail.com> | 2025-08-05 07:25:14 +0200 |
|---|---|---|
| committer | Maze Winther <mazewinther@gmail.com> | 2025-08-05 07:25:14 +0200 |
| commit | e4546120008b9e5cd97ab1f8a0c63c55559dae1d (patch) | |
| tree | 37d632b3a1b37bd7b7b4fde511a674168bc09475 | |
| parent | dee434cd33144950905eb349726d7bbc3c00c624 (diff) | |
| download | opencut-e4546120008b9e5cd97ab1f8a0c63c55559dae1d.tar.gz | |
formatting
| -rw-r--r-- | apps/web/src/components/editor/audio-waveform.tsx | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/apps/web/src/components/editor/audio-waveform.tsx b/apps/web/src/components/editor/audio-waveform.tsx index 372a31c5..79bf401d 100644 --- a/apps/web/src/components/editor/audio-waveform.tsx +++ b/apps/web/src/components/editor/audio-waveform.tsx @@ -20,7 +20,7 @@ const AudioWaveform: React.FC<AudioWaveformProps> = ({ useEffect(() => { let mounted = true; let ws = wavesurfer.current; - + const initWaveSurfer = async () => { if (!waveformRef.current || !audioUrl) return; @@ -90,7 +90,7 @@ const AudioWaveform: React.FC<AudioWaveformProps> = ({ const wsToDestroy = ws; // Detach from ref immediately wavesurfer.current = null; - + // Wait a tick to destroy so any pending operations can complete requestAnimationFrame(() => { try { @@ -111,13 +111,13 @@ const AudioWaveform: React.FC<AudioWaveformProps> = ({ return () => { // Mark component as unmounted mounted = false; - + // Store reference to current wavesurfer instance const wsToDestroy = wavesurfer.current; - + // Immediately clear the ref to prevent accessing it after unmount wavesurfer.current = null; - + // If we have an instance to clean up, do it safely if (wsToDestroy) { // Delay destruction to avoid race conditions |
