GNOME Bugzilla – Bug 763615
Don't use Wnck on non-X11
Last modified: 2017-06-16 20:10:40 UTC
The application works with the X windows backend but not the wayland backend. The X windows backend has several bugs which freeze the display on Fedora 23 making development harder than it should be.
Can you be a bit more specific and maybe add some logs and steps how to reproduce this bug?
Created attachment 324788 [details] Screenshot of dfeet started on gnome on wayland
Created attachment 324789 [details] Bustle application log of dfeet startup on gnoe on wayland
Created attachment 324790 [details] Journal log file for dfeet start up using gnome-on-wayland
The d-feet application when started on gnome-on-wayland starts up with the main window and system and session bus widget buttons put does not display any information in both the system or session bus views. I have attached a screen view plus a bustle-log and a journal log of the startup of the application. I do understand that Gnome-on-wayland is not feature complete but many gnome applications seem to work correctly. If you require additional debug info - please inform the debug steps to reproduce what is required. The info added should have been included in the original report but was missed. I am seeing the failure at anytime the d-feet application is started with gnome-on wayland. It is easy to reproduce just start the d-feet application on gnome-on-wayland The Version number of d-feet installed is d-feet-0.3.9-3.fc23.noarch.
I had same problem, but I've managed to fix it by disabling wnck: I've forced has_libwnck = False in wnck_utils.py, and problem is gone
Created attachment 325182 [details] [review] Trivial patch I know that this is just a workaround, but it seems that wnck is X11-only library
Created attachment 326199 [details] [review] Don't use Wnck to get app-icons under non-X11 --- Here's what I think is a more correct patch: continue to use Wnck, but only if Wnck.Screen.get_default() returns non-None (i.e. in the underlying C code, wnck_screen_get_default() returns non-NULL).
Downstream bug: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=821294
Thanks for the fix!
Comment on attachment 326199 [details] [review] Don't use Wnck to get app-icons under non-X11 This was committed.
*** This bug has been marked as a duplicate of bug 776242 ***
Damn, I got it the wrong way around.
*** Bug 776242 has been marked as a duplicate of this bug. ***
On GNOME 3.22 onwards or depending on the compiler flags or the phase of the moon, this led to a crash. See bug 776242 where wnck_screen_get is called with an obscenely negative number.
(In reply to Debarshi Ray from comment #15) > On GNOME 3.22 onwards or depending on the compiler flags or the phase of the > moon, this led to a crash. See bug 776242 where wnck_screen_get is called > with an obscenely negative number. It is sometimes called with an obscenely large positive number too, but it only seems to crash when it is negative. Anyway, I think we should not call into Wnck at all on Wayland.
(In reply to Debarshi Ray from comment #16) > (In reply to Debarshi Ray from comment #15) > > On GNOME 3.22 onwards or depending on the compiler flags or the phase of the > > moon, this led to a crash. See bug 776242 where wnck_screen_get is called > > with an obscenely negative number. > > It is sometimes called with an obscenely large positive number too, but it > only seems to crash when it is negative. Anyway, I think we should not call > into Wnck at all on Wayland. The difference between the Fedora and Debian breakages might be due to Python 3 versus Python 2. d-feet was switched to Python 3 in Fedora 24, before Wayland became default. That's probably why we have started seeing the crashes with Fedora 25 after Wayland became the default.
Created attachment 353262 [details] [review] Assume Wnck is absent on non-X11 This is on top of the patch in bug 783468
(In reply to Debarshi Ray from comment #18) > Assume Wnck is absent on non-X11 Not a d-feet maintainer, but this looks good to me. You might want to revert my patch after applying this one, to get rid of the extra level of indent and the unexplained/unnecessary None check.
Created attachment 353309 [details] [review] Revert "Don't use Wnck to get app-icons under non-X11"
Applied in git. Thanks!