diff --git a/src/effects/Effect.cpp b/src/effects/Effect.cpp index 7187c5dc4..f77446d0f 100644 --- a/src/effects/Effect.cpp +++ b/src/effects/Effect.cpp @@ -2192,6 +2192,19 @@ EffectUIHost::~EffectUIHost() { if (mInitialized) { + mInitialized = false; + + wxTheApp->Disconnect(EVT_AUDIOIO_PLAYBACK, + wxCommandEventHandler(EffectUIHost::OnPlayback), + NULL, + this); + + wxTheApp->Disconnect(EVT_AUDIOIO_CAPTURE, + wxCommandEventHandler(EffectUIHost::OnCapture), + NULL, + this); + + EffectManager::Get().RealtimeRemoveEffect(mEffect); } if (mClient)