GNOME Bugzilla – Bug 732742
Infinite recursion on GdkDevice disposal
Last modified: 2015-11-24 19:56:00 UTC
Launching a GTK+ app to run on Weston/drm from a different tty than Weston (whether from X11 with GDK_BACKEND=wayland or from a text tty) causes that app to start in Weston as expected, but when you switch to weston, the app crashes immediately. The crash is due to an infinite recursion on gdk_device_dispose():
+ Trace 233770
Created attachment 316198 [details] [review] device: Fix dispose The way master devices detach from their other master counterpart is vulnerable to infinite recursion due to the way we first recurse on the other device before clearing the pointer, this may happen if that last reference to the other master device is held by the device->associated field.
Review of attachment 316198 [details] [review]: ok
Attachment 316198 [details] pushed as cc2e772 - device: Fix dispose