diff options
| author | enkeii64 <imenkei64@gmail.com> | 2025-08-04 17:38:02 +1000 |
|---|---|---|
| committer | enkeii64 <imenkei64@gmail.com> | 2025-08-04 17:38:02 +1000 |
| commit | 3a6bc6ebf71475a19b9202061ab08f93d1a67b9f (patch) | |
| tree | 3cf00905e560c561ebea05a5b1b8a2bece4c7602 /apps/web/src/components/editor/audio-waveform.tsx | |
| parent | ae54aff1a9762ceb9e42a534c29c584bbf18d6d5 (diff) | |
| download | opencut-3a6bc6ebf71475a19b9202061ab08f93d1a67b9f.tar.gz | |
feat: add panel presets
Diffstat (limited to 'apps/web/src/components/editor/audio-waveform.tsx')
| -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 |
