From e367f75d7285d2bcd10cbb35d088c96f33c02aff Mon Sep 17 00:00:00 2001 From: Simon Hausmann Date: Sat, 9 Nov 2013 01:58:28 +0100 Subject: [PATCH] Fix crash in animation controller upon destruction Triggered by tst_examples, it appears that we can have jobs in m_deleting that are also still listed in m_starting. So similar to what we do in beforeNodeSync, we now also take any deletion-scheduled jobs out of m_starting/m_stopping in the destructor. Change-Id: I2e00570a4e4669f8172354bf5806c5285920030a Reviewed-by: Lars Knoll --- src/quick/util/qquickanimatorcontroller.cpp | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/quick/util/qquickanimatorcontroller.cpp b/src/quick/util/qquickanimatorcontroller.cpp index a2364f4..7991dd8 100644 --- a/src/quick/util/qquickanimatorcontroller.cpp +++ b/src/quick/util/qquickanimatorcontroller.cpp @@ -62,6 +62,8 @@ QQuickAnimatorController::~QQuickAnimatorController() // The proxy job might already have been deleted, in which case we // need to avoid calling functions on them. Then delete the job. foreach (QAbstractAnimationJob *job, m_deleting) { + m_starting.take(job); + m_stopping.take(job); m_animatorRoots.take(job); delete job; } -- 2.7.4