summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPeter Ward <peteraward@gmail.com>2011-05-28 00:12:15 +1000
committerEmmanuele Bassi <ebassi@linux.intel.com>2011-06-08 13:12:36 +0100
commitcbe1a705bf9629bb44fd4c30df1e9c7cae770998 (patch)
treed5dcd20fe7fc70d534fbb89ae50d1f2c5d42b018
parent486e7a990605d6b825342eb91421969008f55e2f (diff)
downloadclutter-cbe1a705bf9629bb44fd4c30df1e9c7cae770998.tar.gz
device: Prevent segfault
When disposing a slave device without a master. http://bugzilla.clutter-project.org/show_bug.cgi?id=2655 (cherry picked from commit c836b8c53c473e7d309c6c0c9d25b3ec74c827ff) Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
-rw-r--r--clutter/clutter-input-device.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/clutter/clutter-input-device.c b/clutter/clutter-input-device.c
index dd277d13d..3f44b974e 100644
--- a/clutter/clutter-input-device.c
+++ b/clutter/clutter-input-device.c
@@ -78,11 +78,11 @@ clutter_input_device_dispose (GObject *gobject)
g_free (device->device_name);
- if (device->device_mode == CLUTTER_INPUT_MODE_SLAVE)
- _clutter_input_device_remove_slave (device->associated, device);
-
if (device->associated != NULL)
{
+ if (device->device_mode == CLUTTER_INPUT_MODE_SLAVE)
+ _clutter_input_device_remove_slave (device->associated, device);
+
_clutter_input_device_set_associated_device (device->associated, NULL);
g_object_unref (device->associated);
device->associated = NULL;