[Wayland-bugs] [Bug 759299] New: wayland: possible infinite loop in gdkwindow-wayland
gtk+ (GNOME Bugzilla)
bugzilla at gnome.org
Thu Dec 10 05:08:29 PST 2015
https://bugzilla.gnome.org/show_bug.cgi?id=759299
Bug ID: 759299
Summary: wayland: possible infinite loop in gdkwindow-wayland
Classification: Platform
Product: gtk+
Version: 3.19.x
OS: Linux
Status: NEW
Severity: normal
Priority: Normal
Component: Backend: Wayland
Assignee: gtk-bugs at gtk.org
Reporter: ofourdan at redhat.com
QA Contact: gtk-bugs at gtk.org
CC: rob at robster.org.uk, wayland-bugs at lists.freedesktop.org
GNOME version: ---
Created attachment 317111
--> https://bugzilla.gnome.org/attachment.cgi?id=317111&action=edit
Reproducer program
Summary:
The Wayland backend will enter an infinite loop in case of a cycle in transient
relationship (a transient for B and B transient for A).
Steps to reproduce:
1. Save and build the attached program
$ gcc -o cycling-transient cycling-transient.c `pkg-config --libs --cflags
gtk+-3.0`
2. Execute the program under Wayland
Actual result:
The program wil lenter an infinite loop and take 100% CPU
Expected result:
The windows appear normally as in X11
Additional data:
This is because of the following code construct in gdkwindow-wayland.c
while (window)
{
GdkWindowImplWayland *impl;
impl = GDK_WINDOW_IMPL_WAYLAND (window->impl);
window = impl->transient_for;
}
As found in find_grab_input_seat(), get_popup_parent() or
gdk_wayland_window_get_fake_root_coords()
--
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/wayland-bugs/attachments/20151210/85a885ee/attachment.html>
More information about the wayland-bugs
mailing list