https://bugzilla.gnome.org/show_bug.cgi?id=775319

            Bug ID: 775319
           Summary: [Wayland]: Destroying the parent of a subsurface
                    causes _gdk_window_destroy_hierarchy: assertion failed
    Classification: Platform
           Product: gtk+
           Version: 3.22.x
                OS: Linux
            Status: NEW
          Severity: normal
          Priority: Normal
         Component: Backend: Wayland
          Assignee: [email protected]
          Reporter: [email protected]
        QA Contact: [email protected]
                CC: [email protected], [email protected]
        Depends on: 774475
            Blocks: 774546
     GNOME version: ---

Description:

Creating a gdk window subsurface with another gdk window as parent generates
critical warnings:

  GLib-GObject-WARNING **: invalid (NULL) pointer instance
  GLib-GObject-CRITICAL **: g_signal_connect_data: assertion
'G_TYPE_CHECK_INSTANCE (instance)' failed
  GLib-GObject-WARNING **: invalid (NULL) pointer instance
  GLib-GObject-CRITICAL **: g_signal_connect_data: assertion
'G_TYPE_CHECK_INSTANCE (instance)' failed

Those are coming from _gdk_wayland_display_create_window_impl() because
gdk_window_get_frame_clock() returns NULL.

gdk_window_get_frame_clock() tries to get the frame clock from the toplevel, by
walking the window tree back to the corresponding top level.

Unfortunately, it does so by checking the window_type to be GDK_WINDOW_CHILD
whereas it can also be a GDL_WINDOW_SUBSURFACE now (bug 774475).

Since it cannot find the correct toplevel window, it returns NULL as the clock
frame, which then causes the critical warnings in
_gdk_wayland_display_create_window_impl()

Trivial patch to follow.

-- 
You are receiving this mail because:
You are on the CC list for the bug.
_______________________________________________
wayland-bugs mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/wayland-bugs

Reply via email to