GNOME Bugzilla – Bug 600865
[csw?] gnome-panel crashed with "BadPixmap (invalid Pixmap parameter)"
Last modified: 2010-01-15 15:22:46 UTC
Three times since I updated to Ubuntu 9.10 (Gnome Panel 2.28.0) I've had the panel crash on me. It restarts each time, so that's nice at least. Looking in my ~/.xsession-errors file I see: The program 'gnome-panel' received an X Window System error. This probably reflects a bug in the program. The error was 'BadPixmap (invalid Pixmap parameter)'. (Details: serial 109241 error_code 4 request_code 54 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.) Then it restarts (I presume this info is not that interesting but): ** (gnome-panel:17715): DEBUG: Adding applet 0. ** (gnome-panel:17715): DEBUG: Initialized Panel Applet Signaler. ** (gnome-panel:17715): DEBUG: Adding applet 1. (gnome-panel:17715): Gtk-WARNING **: gtk_widget_size_allocate(): attempt to allocate widget with width -15 and height 26 ** (gnome-panel:17715): DEBUG: Adding applet 2. ** (gnome-panel:17715): DEBUG: Adding applet 3. ** (gnome-panel:17715): DEBUG: Adding applet 4. ** (gnome-panel:17715): DEBUG: Adding applet 5. ** (gnome-panel:17715): DEBUG: Adding applet 6. ** (gnome-panel:17715): DEBUG: Adding applet 7. ** (gnome-panel:17715): DEBUG: Adding applet 8. ** (gnome-panel:17715): DEBUG: Adding applet 9. ** (gnome-panel:17715): DEBUG: Adding applet 10. ** (gnome-panel:17715): DEBUG: Adding applet 11. ** (gnome-panel:17715): DEBUG: Adding applet 12. ** (gnome-panel:17715): DEBUG: Adding applet 13. ** (gnome-panel:17715): DEBUG: Adding applet 14. ** (gnome-panel:17715): DEBUG: Adding applet 15. ** (gnome-panel:17715): DEBUG: Adding applet 16. ** (gnome-panel:17715): DEBUG: Adding applet 17. ** (gnome-panel:17715): DEBUG: Adding applet 18. ** (gnome-panel:17715): DEBUG: Adding applet 19. ** (gnome-panel:17715): DEBUG: Adding applet 20. ** (gnome-panel:17715): DEBUG: Adding applet 21. ** (gnome-panel:17715): DEBUG: Adding applet 22. ** (gnome-panel:17715): DEBUG: Adding applet 23. ** (gnome-panel:17715): DEBUG: Adding applet 24. ** (gnome-panel:17715): DEBUG: Adding applet 25. ** (gnome-panel:17715): DEBUG: Adding applet 26. ** (gnome-panel:17715): DEBUG: Adding applet 27. ** (gnome-panel:17715): DEBUG: Adding applet 28. ** (gnome-panel:17715): DEBUG: Adding applet 29. ** (gnome-panel:17715): DEBUG: Adding applet 30. (gnome-panel:17715): Gdk-WARNING **: /build/buildd/gtk+2.0-2.18.3/gdk/x11/gdkdrawable-x11.c:952 drawable is not a pixmap or window ** (gnome-panel:17715): DEBUG: Adding applet 31. ** (gnome-panel:17715): DEBUG: Adding applet 32. Then it works for a while. It crashed once yesterday, and then again today twice within a half-hour or so. Right before it crashes I sometimes see 3-4 dialog windows appear on my screen, but they never get fully drawn so there's no title or text inside them, so I don't know what they are about. I'm not doing anything in particular, that I can think of. I'm not even interacting with the panel when this happens.
I had this happen again yesterday. The odd thing is it doesn't seem to happen to me on my home system (also running 9.10). It's quite possible I run a different set of applications that might be putting up notification icons or something.
Actually I just had this happen on my system at home as well. If it helps, it seems to happen more often when I'm using Outlook running under Crossover Linux (that is, when I'm actually using Outlook--which I hate but Evo MAPI support is simply not there yet).
Hi I have the same problem on my IBook with a Debian Lenny (powerpc). After a period of inactivity, the screen of my computer switches off. When I come back on my laptop, the screen switches on and gnome-panel crashes with the previous error. Tell me how can I help you to solve this bug. Thomas
If you're able to reproduce this easily, can you get a gnome-panel stack trace when running with --sync? Make sure to install the debug packages, launch "gdb gnome-panel", and then in gdb type "set args --replace --sync". And "run". Thanks!
OK, I've started the debugger. Sometimes it happens multiple times a day, sometimes I go a few days in between, but I'll report back when I get more details.
Hi Vincent and Paul, I waited all evening to reproduce the bug and I'm happy to announce that I have a backtrace. It is not complete because I didn't install all debug packages. For me, the problem happens with the CPU Frequency Scaling Applet. Tell me if the this backtrace is good or not. Thomas
Created attachment 151429 [details] First backtrace
It just failed but the debugger didn't help (it didn't dump core, it just exited, so there's no way to trace). Here's the output: The program 'gnome-panel' received an X Window System error. This probably reflects a bug in the program. The error was 'BadPixmap (invalid Pixmap parameter)'. (Details: serial 317422 error_code 4 request_code 54 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.) Program exited with code 01. I've set a breakpoint as suggested in the output above, and I'm waiting for it to happen again... if this isn't correct, let me know.
Hrm, by adding the breakpoint it stops a lot, for things that I don't think are real problems (because when I continue, gnome-panel doesn't exit). I don't know how to set a breakpoint so that it only stops when gnome-panel is really going to exit with the above error. Argh. I'll keep trying to find the right stack; the one that actually exits.
Created attachment 151436 [details] Backtrace when gnome-panel exits due to X err OK, got it. The first backtrace is when it failed the first time, then I pressed "c" and got another breakpoint and that's the second backtrace, then I pressed "c" again and then it exited. Info attached.
Let me know if you need more.
(In reply to comment #7) > Created an attachment (id=151429) [details] > First backtrace This one is bug 597914.
Pasting the stack trace from comment 10 here: (gdb) bt full
+ Trace 220090
(gdb) c Continuing. The program 'gnome-panel' received an X Window System error. This probably reflects a bug in the program. The error was 'BadPixmap (invalid Pixmap parameter)'. (Details: serial 176279 error_code 4 request_code 54 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.) Program received signal SIGPIPE, Broken pipe.
Alex: could you take a look at this bug? It looks similar to a few other bugs reported against gnome-panel (like bug 600280), and the only thing that changed since 2.26 and that could explain that is, I think, CSW...
Fixed in: http://git.gnome.org/browse/gtk+/commit/?id=f96e51db46f2196707c0ea44a46f1d67f9a069d4