From 2e8f42da85b060ae9b79f45ac253f77c4c92bf5c Mon Sep 17 00:00:00 2001 From: Robert Ancell Date: Mon, 9 Jun 2014 14:00:42 +1200 Subject: [PATCH] Unref window when pointer object is finalized --- gdk/mir/gdkmirpointer.c | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/gdk/mir/gdkmirpointer.c b/gdk/mir/gdkmirpointer.c index c249f9c5a9..96c7e743fd 100644 --- a/gdk/mir/gdkmirpointer.c +++ b/gdk/mir/gdkmirpointer.c @@ -219,11 +219,25 @@ gdk_mir_pointer_init (GdkMirPointer *device) { } +static void +gdk_mir_pointer_finalize (GObject *object) +{ + GdkMirPointer *p = GDK_MIR_POINTER (object); + + if (p->over_window) + g_object_unref (p->over_window); + + G_OBJECT_CLASS (gdk_mir_pointer_parent_class)->finalize (object); +} + static void gdk_mir_pointer_class_init (GdkMirPointerClass *klass) { + GObjectClass *object_class = G_OBJECT_CLASS (klass); GdkDeviceClass *device_class = GDK_DEVICE_CLASS (klass); + object_class->finalize = gdk_mir_pointer_finalize; + device_class->get_history = gdk_mir_pointer_get_history; device_class->get_state = gdk_mir_pointer_get_state; device_class->set_window_cursor = gdk_mir_pointer_set_window_cursor;