aboutsummaryrefslogtreecommitdiffstats
path: root/src/quick/items/qquickitemanimation.cpp
diff options
context:
space:
mode:
authorCharles Yin <charles.yin@nokia.com>2012-05-29 09:50:08 +1000
committerQt by Nokia <qt-info@nokia.com>2012-05-29 05:57:48 +0200
commit0eec47c65982f586a8602af964b454494f0f49f3 (patch)
tree219d920ae7ea9007b618d7ac75ef51438155b2e2 /src/quick/items/qquickitemanimation.cpp
parent4e835ea4624f3a686ab46f04e13dd6852b64791d (diff)
Fix memory leaks in QQuickParentAnimation
Change-Id: I7b386b3b5f974e068c7ca00d3d9ea92a62fc70d9 Reviewed-by: Michael Brasser <michael.brasser@nokia.com>
Diffstat (limited to 'src/quick/items/qquickitemanimation.cpp')
-rw-r--r--src/quick/items/qquickitemanimation.cpp16
1 files changed, 8 insertions, 8 deletions
diff --git a/src/quick/items/qquickitemanimation.cpp b/src/quick/items/qquickitemanimation.cpp
index 54092039ac..e79b9c3bc1 100644
--- a/src/quick/items/qquickitemanimation.cpp
+++ b/src/quick/items/qquickitemanimation.cpp
@@ -371,13 +371,13 @@ QAbstractAnimationJob* QQuickParentAnimation::transition(QQuickStateActions &act
}
}
- QSequentialAnimationGroupJob *topLevelGroup = new QSequentialAnimationGroupJob;
- QActionAnimation *viaAction = d->via ? new QActionAnimation : 0;
- QActionAnimation *targetAction = new QActionAnimation;
- //we'll assume the common case by far is to have children, and always create ag
- QParallelAnimationGroupJob *ag = new QParallelAnimationGroupJob;
-
if (data->actions.count()) {
+ QSequentialAnimationGroupJob *topLevelGroup = new QSequentialAnimationGroupJob;
+ QActionAnimation *viaAction = d->via ? new QActionAnimation : 0;
+ QActionAnimation *targetAction = new QActionAnimation;
+ //we'll assume the common case by far is to have children, and always create ag
+ QParallelAnimationGroupJob *ag = new QParallelAnimationGroupJob;
+
if (d->via)
viaAction->setAnimAction(viaData);
targetAction->setAnimAction(data);
@@ -405,12 +405,12 @@ QAbstractAnimationJob* QQuickParentAnimation::transition(QQuickStateActions &act
topLevelGroup->appendAnimation(ag);
topLevelGroup->appendAnimation(d->via ? viaAction : targetAction);
}
+ return initInstance(topLevelGroup);
} else {
delete data;
delete viaData;
}
-
- return initInstance(topLevelGroup);
+ return 0;
}
/*!