Merge branch 'gdk-device-leak-fix-gtk3' into 'gtk-3-24'
GdkDevice leak fix See merge request GNOME/gtk!1359
This commit is contained in:
commit
9c832b388b
@ -396,6 +396,7 @@ gdk_seat_default_remove_slave (GdkSeatDefault *seat,
|
|||||||
priv->capabilities |= device_get_capability (GDK_DEVICE (l->data));
|
priv->capabilities |= device_get_capability (GDK_DEVICE (l->data));
|
||||||
|
|
||||||
gdk_seat_device_removed (GDK_SEAT (seat), device);
|
gdk_seat_device_removed (GDK_SEAT (seat), device);
|
||||||
|
g_object_unref (device);
|
||||||
}
|
}
|
||||||
else if (g_list_find (priv->slave_keyboards, device))
|
else if (g_list_find (priv->slave_keyboards, device))
|
||||||
{
|
{
|
||||||
@ -405,6 +406,7 @@ gdk_seat_default_remove_slave (GdkSeatDefault *seat,
|
|||||||
priv->capabilities &= ~GDK_SEAT_CAPABILITY_KEYBOARD;
|
priv->capabilities &= ~GDK_SEAT_CAPABILITY_KEYBOARD;
|
||||||
|
|
||||||
gdk_seat_device_removed (GDK_SEAT (seat), device);
|
gdk_seat_device_removed (GDK_SEAT (seat), device);
|
||||||
|
g_object_unref (device);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -643,14 +643,14 @@ remove_device (GdkX11DeviceManagerXI2 *device_manager,
|
|||||||
if (device)
|
if (device)
|
||||||
{
|
{
|
||||||
detach_from_seat (device);
|
detach_from_seat (device);
|
||||||
device_manager->devices = g_list_remove (device_manager->devices, device);
|
|
||||||
|
|
||||||
g_signal_emit_by_name (device_manager, "device-removed", device);
|
|
||||||
|
|
||||||
g_object_run_dispose (G_OBJECT (device));
|
|
||||||
|
|
||||||
g_hash_table_remove (device_manager->id_table,
|
g_hash_table_remove (device_manager->id_table,
|
||||||
GINT_TO_POINTER (device_id));
|
GINT_TO_POINTER (device_id));
|
||||||
|
|
||||||
|
device_manager->devices = g_list_remove (device_manager->devices, device);
|
||||||
|
g_signal_emit_by_name (device_manager, "device-removed", device);
|
||||||
|
g_object_run_dispose (G_OBJECT (device));
|
||||||
|
g_object_unref (device);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user