diff options
author | Laszlo Agocs <laszlo.agocs@qt.io> | 2019-03-21 20:42:38 +0100 |
---|---|---|
committer | Laszlo Agocs <laszlo.agocs@qt.io> | 2019-03-21 20:42:47 +0100 |
commit | 6767114285db9d0e16dc278d08f231e8561546b4 (patch) | |
tree | 0945902a2242fd7ec0a1f7fd3e6acbb769e723bd /src/quick/util/qquickanimatorjob.cpp | |
parent | ee076afedccbe1d37306a7972051f84eb036d655 (diff) | |
parent | c32b109e9dea44c6775c2dbf8f164870c1dc8971 (diff) |
Merge remote-tracking branch 'origin/dev' into wip/scenegraphng
Change-Id: Ib5662d80d5b2f58cf4634c54c054545ba9df807e
Diffstat (limited to 'src/quick/util/qquickanimatorjob.cpp')
-rw-r--r-- | src/quick/util/qquickanimatorjob.cpp | 16 |
1 files changed, 11 insertions, 5 deletions
diff --git a/src/quick/util/qquickanimatorjob.cpp b/src/quick/util/qquickanimatorjob.cpp index a7950e2b33..03be78ab15 100644 --- a/src/quick/util/qquickanimatorjob.cpp +++ b/src/quick/util/qquickanimatorjob.cpp @@ -197,8 +197,12 @@ void QQuickAnimatorProxyJob::windowChanged(QQuickWindow *window) void QQuickAnimatorProxyJob::setWindow(QQuickWindow *window) { if (!window) { - if (m_job && m_controller) + if (m_job && m_controller) { + disconnect(m_controller->window(), &QQuickWindow::sceneGraphInitialized, + this, &QQuickAnimatorProxyJob::sceneGraphInitialized); m_controller->cancel(m_job); + } + m_controller = nullptr; stop(); @@ -213,8 +217,10 @@ void QQuickAnimatorProxyJob::setWindow(QQuickWindow *window) void QQuickAnimatorProxyJob::sceneGraphInitialized() { - disconnect(m_controller->window(), &QQuickWindow::sceneGraphInitialized, this, &QQuickAnimatorProxyJob::sceneGraphInitialized); - readyToAnimate(); + if (m_controller) { + disconnect(m_controller->window(), &QQuickWindow::sceneGraphInitialized, this, &QQuickAnimatorProxyJob::sceneGraphInitialized); + readyToAnimate(); + } } void QQuickAnimatorProxyJob::readyToAnimate() @@ -246,8 +252,8 @@ void QQuickAnimatorProxyJob::syncBackCurrentValues() } QQuickAnimatorJob::QQuickAnimatorJob() - : m_target(0) - , m_controller(0) + : m_target(nullptr) + , m_controller(nullptr) , m_from(0) , m_to(0) , m_value(0) |