Bug 1075 - Difficult to bind clutter_stage_new

* clutter/clutter-stage.c (clutter_stage_dispose): Unrealize the
	stage before removing the update idle handler. Otherwise
	unrealizing causes another redraw to be queued and if the stage
	object remains alive it will cause an assert and abort.
This commit is contained in:
Neil Roberts 2008-07-31 08:54:43 +00:00
parent 6974c31ad5
commit 1e84798546
2 changed files with 11 additions and 2 deletions

View File

@ -1,3 +1,12 @@
2008-07-31 Neil Roberts <neil@o-hand.com>
Bug 1075 - Difficult to bind clutter_stage_new
* clutter/clutter-stage.c (clutter_stage_dispose): Unrealize the
stage before removing the update idle handler. Otherwise
unrealizing causes another redraw to be queued and if the stage
object remains alive it will cause an assert and abort.
2008-07-30 Neil Roberts <neil@o-hand.com>
* clutter/clutter-stage.c (clutter_stage_class_init): Added the

View File

@ -455,14 +455,14 @@ clutter_stage_dispose (GObject *object)
ClutterStagePrivate *priv = stage->priv;
ClutterStageManager *stage_manager = clutter_stage_manager_get_default ();
clutter_actor_unrealize (CLUTTER_ACTOR (object));
if (priv->update_idle)
{
g_source_remove (priv->update_idle);
priv->update_idle = 0;
}
clutter_actor_unrealize (CLUTTER_ACTOR (object));
_clutter_stage_manager_remove_stage (stage_manager, stage);
if (priv->impl)