summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRaluca Elena Podiuc <ralucaelena1985@gmail.com>2011-06-26 18:56:09 +0200
committerEmmanuele Bassi <ebassi@linux.intel.com>2011-06-26 18:38:12 +0100
commit0ec642a24c25742167d42dd6552c12b8923ea4bc (patch)
tree1f0a10a16a43ed011ddeef9daaca4f13f6055c15
parent5825c8963866dee68da9cc2fec396d317b08dd13 (diff)
downloadclutter-gtk-0ec642a24c25742167d42dd6552c12b8923ea4bc.tar.gz
embed: unmap: check stage exists before unmapping
https://bugzilla.gnome.org/show_bug.cgi?id=653435
-rw-r--r--clutter-gtk/gtk-clutter-embed.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/clutter-gtk/gtk-clutter-embed.c b/clutter-gtk/gtk-clutter-embed.c
index f98a0e7..9eaa0a8 100644
--- a/clutter-gtk/gtk-clutter-embed.c
+++ b/clutter-gtk/gtk-clutter-embed.c
@@ -369,7 +369,10 @@ gtk_clutter_embed_unmap (GtkWidget *widget)
{
GtkClutterEmbedPrivate *priv = GTK_CLUTTER_EMBED (widget)->priv;
- clutter_actor_unmap (priv->stage);
+ /* gtk may emit an unmap signal after dispose, so it's possible we may
+ * have already disposed priv->stage. */
+ if (priv->stage != NULL)
+ clutter_actor_unmap (priv->stage);
GTK_WIDGET_CLASS (gtk_clutter_embed_parent_class)->unmap (widget);
}