summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJasper St. Pierre <jstpierre@mecheye.net>2013-09-18 23:19:39 -0400
committerJasper St. Pierre <jstpierre@mecheye.net>2013-10-15 20:25:47 -0400
commitb7c6b37776ef962dad9941969831ef1f0e0c5b89 (patch)
treef46aae87991e4f34ba3164de18f2db109ad62cd9
parentccd2d4c0a7a789e3aea410f9fafd494949fb0c87 (diff)
downloadclutter-b7c6b37776ef962dad9941969831ef1f0e0c5b89.tar.gz
stage: Destroy all children when we dispose
Destroying an actor is supposed to destroy all of its children, so it makes sense to reason that destroying the stage should destroy all of its children, too. Unfortunately, it seems that the stage removed all of its children without destroying them before chaining up to what would destroy all of its children, for whatever reason. Change this to a destroy so resources get cleaned up.
-rw-r--r--clutter/clutter-stage.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/clutter/clutter-stage.c b/clutter/clutter-stage.c
index 0fcdd2423..b3cdcaf32 100644
--- a/clutter/clutter-stage.c
+++ b/clutter/clutter-stage.c
@@ -1899,7 +1899,7 @@ clutter_stage_dispose (GObject *object)
priv->impl = NULL;
}
- clutter_actor_remove_all_children (CLUTTER_ACTOR (object));
+ clutter_actor_destroy_all_children (CLUTTER_ACTOR (object));
g_list_free_full (priv->pending_queue_redraws,
(GDestroyNotify) free_queue_redraw_entry);