GNOME Bugzilla – Bug 641515
Now Playing crashes with BadMatch X error
Last modified: 2011-10-03 22:50:52 UTC
Created attachment 180090 [details] Stacktrace after "now playing" crash OS: Fedora 14 (x86_64) Kernel: 2.6.35.10-74.fc14.x86_64 Banshee version: banshee-1.8.0-10.fc14.1.x86_64 When clicking on "Now Playing" while a song is playing in Banshee, the program will crash. When launching banshee-l with the --debug option, I see the following error: [1 Debug 10:48:53.159] Loaded IScreensaverManager: Banshee.GnomeBackend.GnomeScreensaverManager Gdk-ERROR **: The program 'Banshee' received an X Window System error. This probably reflects a bug in the program. The error was 'BadMatch (invalid parameter attributes)'. (Details: serial 14710 error_code 8 request_code 70 minor_code 0) (Note to programmers: normally, X errors are reported asynchronously; that is, you will receive the error a while after causing it. To debug your program, run it with the --sync command line option to change this behavior. You can then get a meaningful backtrace from your debugger if you break on the gdk_x_error() function.) aborting... I have also attached a stack trace.
Corresponding bug entry in Fedora: https://bugzilla.redhat.com/show_bug.cgi?id=673171 I have started investigating the issue: 1) it happens under the following circumstances: - having a "compositing" window manager running and so having ARGB visuals available - activated extensions which use WebView (like Amazon or Wikipedia) 2) it can be prevented by: - deactivating the mentioned extensions - starting banshee without ARGB visuals: "XLIB_SKIP_ARGB_VISUALS=1 banshee-1" 3) the problem started to happen when Fedora updated webkitgtk from 1.3.6 to 1.3.10 - I've "svn-bisected" webkitgtk to the following commit: svn log -c 74129 http://svn.webkit.org/repository/webkit/trunk svn diff -c 74129 http://svn.webkit.org/repository/webkit/trunk - it looks like that webkitgtk checks now whether an rgba colormap is available and if yes, it will immediately set it for its embedded widget ----------- GdkColormap* colormap = gdk_screen_get_rgba_colormap(gdk_screen_get_default()); .... gtk_widget_set_colormap(m_gtkWindow, m_themeParts.colormap); ---------- - banshee seems not to use an rgba colormap and so the mentioned "BadMatch" X error will happen I'm not sure whether the problem is now in Banshee or in webkitgtk.
Hey Christian, is it possible for you to narrow down what element on the page is causing this crash? My suspicion is that it's either some kind of form control or a plugin.
I can confirm this on openSUSE Factory, including both workarounds. I'm asking in #webkit-gtk to see if anybody has a clue about this.
Created attachment 181181 [details] [review] launch script workaround Ok, spent way too long on this today with no success. I'm submitting this XLIB_SKIP.. patch for openSUSE as a workaround. Bertrand says it can cause issues w/ transparent notification icons, but I don't see that on SUSE and at this point it's worth it even if that does happen.
(In reply to comment #2) > Hey Christian, is it possible for you to narrow down what element on the page > is causing this crash? My suspicion is that it's either some kind of form > control or a plugin. I don't know which element it is since there isn't any web page displayed - only the some object providing the webkit integration is instantiated. AFAIK the "Now Playing" tab is not rendered via webkit - probably it is just a coincidence that the according objects for the webkit integration are instantiated once you switch to the now playing pane.
*** Bug 640315 has been marked as a duplicate of this bug. ***
*** Bug 637757 has been marked as a duplicate of this bug. ***
*** Bug 643616 has been marked as a duplicate of this bug. ***
I also seem to be experiencing this issue. Here is the output of 'banshee-1 --debug' when I open an mkv file with it: http://pastebin.com/0VaaaBzT
This affected me as well, on Gentoo under XFCE (with compositor on), VMware video driver. I have included Gabriel's patch in the ebuild for Banshee 1.9.5 in my (dustin) overlay.
Created attachment 183444 [details] Stack Trace From Crash
I get a similar crash playing a CD under KDE in Fedora 14 (version 1.8.0) Stack trace is attached above.
Comment on attachment 181181 [details] [review] launch script workaround I committed this to master.
With this patch applied, is anyone still seeing this crash? Let's leave this bug open until we identify and fix the root cause.
Created attachment 184111 [details] New stack trace for crash from git master Installed banshee following instructions here: http://banshee.fm/download/development/ Still get a crash when clicking Now Playing. Trace is attached.
Apologies, git master works fine when it is installed and run and not executed by a "make run".
As confirmed by bug #645832, with the workaround applied the notification icon is not transparent anymore on Ubuntu 10.04 (and 10.10).
After removing the XLIB_SKIP_ARGB_VISUALS=1 workaround, I can reproduce the crash with Banshee 2.0 on openSUSE 11.4. But what's interesting is that the crash doesn't happen anymore with the latest git master. Some git bisecting shows that the following commit fixes the crash : http://git.gnome.org/browse/banshee/commit/?id=3a60ae29c0899254be7845c774571011e7260667 Could you guys check if the crash still happens for you with the latest git master ? Just make sure you disable the workaround : If running with "make run", remove the workaround by deleting XLIB_SKIP_ARGB_VISUALS=1 from the top-level Makefile.am and then running ./autogen.sh In the meantime I'll keep trying to make sense of this...
I can confirm Bertrand's findings in Comment #18 on Gentoo; stock 2.0 crashes without XLIB_SKIP_ARGB_VISUALS, but the latest master does not.
It doesn't crash even if you load the Wikipedia view?
(In reply to comment #20) > It doesn't crash even if you load the Wikipedia view? Nope, Wikipedia loads fine, but it also works in 2.0 for me.
I've reverted the workaround on master.
*** Bug 649792 has been marked as a duplicate of this bug. ***
The Lyrics and Karaoke extension were causing the same problem. I fixed this liked it was done in the Wikipedia extension, by delaying loading webkit until it's needed : https://gitorious.org/banshee-community-extensions/banshee-community-extensions/commit/ad63da5 https://gitorious.org/banshee-community-extensions/banshee-community-extensions/commit/b6419fb
Can that patches be backported to 2.0.x branch? Looks like they don't apply on it :( Thanks a lot
As the 2.2 release is less than 2 weeks away, I won't backport those changes. But it should be possible to apply those changes, a bit of re-jiggering is probably needed.
OK, I didn't know 2.2 release was so near
Should we close this as FIXED then? Pacho, did you test with 2.2.0 already?
It works, feel free to close this :D (I am not allowed to as I am not the reporter :/)
Thanks Pacho. Feel free to reopen the bug if anyone finds it different.