aboutsummaryrefslogtreecommitdiffstats
path: root/src/quick/util/qquickanimatorjob.cpp
diff options
context:
space:
mode:
authorGunnar Sletta <gunnar@sletta.org>2016-10-18 17:33:36 +0200
committerJ-P Nurmi <jpnurmi@qt.io>2016-10-20 20:05:29 +0000
commitb71b4b8ef9e41210a5119c965126ccf0e50d3a36 (patch)
treee3a966726f3f0a7088b9c34bab0b24ade64011cd /src/quick/util/qquickanimatorjob.cpp
parente48f83b57aeee90fe63926a95f98e3e5d77654f8 (diff)
Fix assert with new animator codepaths
Task-number: QTBUG-56572 Change-Id: Ia2dd03d4e1b372b8d9ed0fd5e17683f63bde8534 Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
Diffstat (limited to 'src/quick/util/qquickanimatorjob.cpp')
-rw-r--r--src/quick/util/qquickanimatorjob.cpp9
1 files changed, 7 insertions, 2 deletions
diff --git a/src/quick/util/qquickanimatorjob.cpp b/src/quick/util/qquickanimatorjob.cpp
index 62989b076b..fa13e8519e 100644
--- a/src/quick/util/qquickanimatorjob.cpp
+++ b/src/quick/util/qquickanimatorjob.cpp
@@ -220,7 +220,6 @@ void QQuickAnimatorProxyJob::readyToAnimate()
static void qquick_syncback_helper(QAbstractAnimationJob *job)
{
if (job->isRenderThreadJob()) {
- Q_ASSERT(!job->isRunning());
static_cast<QQuickAnimatorJob *>(job)->writeBack();
} else if (job->isGroup()) {
@@ -264,7 +263,13 @@ qreal QQuickAnimatorJob::progress(int time) const
qreal QQuickAnimatorJob::value() const
{
- return m_value;
+ qreal value = m_to;
+ if (m_controller) {
+ m_controller->lock();
+ value = m_value;
+ m_controller->unlock();
+ }
+ return value;
}
void QQuickAnimatorJob::setTarget(QQuickItem *target)