From 3fa38114d19a4f81c9fbc00a64a267592c18bdea Mon Sep 17 00:00:00 2001 From: reuk Date: Wed, 20 Oct 2021 20:25:07 +0100 Subject: [PATCH] AsyncUpdater: Cancel updates in derived class destructors --- modules/juce_events/broadcasters/juce_ChangeBroadcaster.h | 1 + modules/juce_events/timers/juce_Timer.cpp | 1 + 2 files changed, 2 insertions(+) diff --git a/modules/juce_events/broadcasters/juce_ChangeBroadcaster.h b/modules/juce_events/broadcasters/juce_ChangeBroadcaster.h index bf97413dcd..9e8b03caff 100644 --- a/modules/juce_events/broadcasters/juce_ChangeBroadcaster.h +++ b/modules/juce_events/broadcasters/juce_ChangeBroadcaster.h @@ -86,6 +86,7 @@ private: { public: ChangeBroadcasterCallback(); + ~ChangeBroadcasterCallback() override { cancelPendingUpdate(); } void handleAsyncUpdate() override; ChangeBroadcaster* owner; diff --git a/modules/juce_events/timers/juce_Timer.cpp b/modules/juce_events/timers/juce_Timer.cpp index 52e12919b0..32c4e12bf8 100644 --- a/modules/juce_events/timers/juce_Timer.cpp +++ b/modules/juce_events/timers/juce_Timer.cpp @@ -38,6 +38,7 @@ public: ~TimerThread() override { + cancelPendingUpdate(); signalThreadShouldExit(); callbackArrived.signal(); stopThread (4000);