actor: Do not restore the easing state in finalize()

The easing state is part of the AnimationInfo structure, which is stored
inside the GObject's datalist. Each instance frees the data stored there
during finalization, so there is no point for us to restore an easing
state (which may or may not be the last one) just to have everything
cleared out once we chain up to GObject's own finalize() implementation.
This commit is contained in:
Emmanuele Bassi 2015-01-01 12:48:39 +00:00
parent d930bdf3fc
commit eb51f6cf10

View File

@ -5894,10 +5894,8 @@ clutter_actor_finalize (GObject *object)
CLUTTER_NOTE (MISC, "Finalize actor (name='%s', id=%d) of type '%s'", CLUTTER_NOTE (MISC, "Finalize actor (name='%s', id=%d) of type '%s'",
priv->name != NULL ? priv->name : "<none>", priv->name != NULL ? priv->name : "<none>",
priv->id, priv->id,
g_type_name (G_OBJECT_TYPE (object))); g_type_name (G_OBJECT_TYPE (object)));
clutter_actor_restore_easing_state (CLUTTER_ACTOR (object));
_clutter_context_release_id (priv->id); _clutter_context_release_id (priv->id);
@ -8456,6 +8454,9 @@ clutter_actor_init (ClutterActor *self)
*/ */
priv->needs_compute_expand = FALSE; priv->needs_compute_expand = FALSE;
/* we start with an easing state with duration forcibly set
* to 0, for backward compatibility.
*/
clutter_actor_save_easing_state (self); clutter_actor_save_easing_state (self);
clutter_actor_set_easing_duration (self, 0); clutter_actor_set_easing_duration (self, 0);
} }