diff options
author | Emmanuele Bassi <ebassi@linux.intel.com> | 2010-01-06 17:37:40 +0000 |
---|---|---|
committer | Emmanuele Bassi <ebassi@linux.intel.com> | 2010-01-06 17:37:40 +0000 |
commit | feeadc6096201049b1d3f5082de2a3266fc84f0e (patch) | |
tree | a1ed207ce7e630993fd08dc1a7feab434c0ed101 /clutter-gtk/gtk-clutter-embed.c | |
parent | 93502e8cb9eb70c016dce2a3fe307c02b03502d3 (diff) | |
download | clutter-gtk-feeadc6096201049b1d3f5082de2a3266fc84f0e.tar.gz |
embed: Check the stage before disconnecting signals
The stage might have been destroyed already when we get to the signal
disconnection, in which case we can safely unset the signal handler id
and just fall through.
Diffstat (limited to 'clutter-gtk/gtk-clutter-embed.c')
-rw-r--r-- | clutter-gtk/gtk-clutter-embed.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/clutter-gtk/gtk-clutter-embed.c b/clutter-gtk/gtk-clutter-embed.c index bd4b5c0..7ab6b9f 100644 --- a/clutter-gtk/gtk-clutter-embed.c +++ b/clutter-gtk/gtk-clutter-embed.c @@ -121,7 +121,9 @@ gtk_clutter_embed_dispose (GObject *gobject) if (priv->queue_redraw_id) { - g_signal_handler_disconnect (priv->stage, priv->queue_redraw_id); + if (priv->stage != NULL) + g_signal_handler_disconnect (priv->stage, priv->queue_redraw_id); + priv->queue_redraw_id = 0; } |