gtk-window-decorator crashes frequently

Bug #991552 reported by Bracken
136
This bug affects 29 people
Affects Status Importance Assigned to Milestone
Compiz
Incomplete
High
Unassigned
Compiz Core
Incomplete
High
Unassigned
compiz (Ubuntu)
Incomplete
High
Unassigned

Bug Description

Since updating t 12.04, I find my window decorations dissapearing regularly, I have to do `gtk-window-decorator --replace` to get them back.

The evidence in this defect was colected while they were absent, after 2 re-starts of gtk-window-decorator earlier in the day.

Open windows are:
-Google Chrome
-Gnome Terminal
-Lotus Sametime
-Lotus Notes
-Pidgin
-CMVC

ProblemType: Bug
DistroRelease: Ubuntu 12.04
Package: unity 5.10.0-0ubuntu6
ProcVersionSignature: Ubuntu 3.2.0-24.37-generic-pae 3.2.14
Uname: Linux 3.2.0-24-generic-pae i686
NonfreeKernelModules: nvidia
ApportVersion: 2.0.1-0ubuntu6
Architecture: i386
CompizPlugins: [core,bailer,detection,composite,opengl,compiztoolbox,decor,imgpng,place,snap,move,vpswitch,resize,mousepoll,session,grid,gnomecompat,regex,commands,unitymtgrabhandles,wall,animation,workarounds,fade,scale,expo,ezoom,unityshell]
Date: Mon Apr 30 01:25:17 2012
InstallationMedia: Ubuntu 11.10 "Oneiric Ocelot" - Release i386 (20111012)
SourcePackage: unity
UpgradeStatus: Upgraded to precise on 2012-04-27 (2 days ago)

Revision history for this message
Bracken (abdawson) wrote :
Revision history for this message
Daniel van Vugt (vanvugt) wrote :

Thank you for taking the time to report this bug and helping to make Ubuntu better. However, your crash report is either missing or challenging to deal with as a ".crash" file. Please follow these instructions to have apport report a new bug about your crash that can be dealt with by the automatic retracer.

If you are running the Ubuntu Stable Release you might need to enable apport in /etc/default/apport and restart.

Now open your file manager, navigate to your /var/crash directory and open the crash report you wish to submit.
If this fails you will have to open a terminal and file your report with 'ubuntu-bug /var/crash/_my_crash_report.crash' where _my_crash_report.crash is the crash you would like to report. If you get an error that you aren't allowed to access this report you will have to file it with 'sudo ubuntu-bug /var/crash/_my_crash_report.crash'.

affects: unity (Ubuntu) → compiz (Ubuntu)
Changed in compiz-core:
status: New → Incomplete
Changed in compiz (Ubuntu):
status: New → Incomplete
Revision history for this message
Bracken (abdawson) wrote :

Apport was already enabled, there is no crash report for gtk-window-manager in /var/crash/

Changed in compiz (Ubuntu):
status: Incomplete → Confirmed
Changed in compiz-core:
status: Incomplete → Confirmed
Revision history for this message
Bracken (abdawson) wrote :

gtk-window-decorator rather.

Revision history for this message
Bracken (abdawson) wrote :

I ran from the CLI and got this output:

alandaws@ABD-W510 /var/crash $ gtk-window-decorator --replace
The program 'gtk-window-decorator' received an X Window System error.
This probably reflects a bug in the program.
The error was 'BadWindow (invalid Window parameter)'.
  (Details: serial 13050 error_code 3 request_code 20 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.)

Revision history for this message
GonzO (gonzo) wrote :

Oh, goody. I was wondering if there was any movement on this.

I was unable to generate any sort of crash data myself.

Also, the defect isn't triggered by running Lotus Notes itself, but rather by doing anything in Notes that would open a sub-dialog - i.e., inserting a signature, or opening the Preferences window. And the problem isn't consistent - one of these dialog windows will take out the decorator on the first run, but after its re-run, it doesn't always.

Revision history for this message
Jan Claeys (janc) wrote :

I think bug #997157, bug #997157, bug #992843 and maybe also bug #993633 are related to or the same is this bug?

Revision history for this message
Jan Claeys (janc) wrote :

Those other bugs don't mention Lotus Notes though, but two mention Wine.

And I don't use Wine or Notes, but still see this bug...

Changed in compiz-core:
importance: Undecided → High
Changed in compiz (Ubuntu):
importance: Undecided → High
Changed in compiz-core:
milestone: none → 0.9.8.0
Revision history for this message
Tony Pursell (ajpursell) wrote :

My bug (#993663) has been added to this.

I now know that the most common (perhaps the only) occurrence of this is when running a small Win 3.1 game in Wine. It is a shareware program that I can attach here if anyone wants to try it.

Changed in compiz:
importance: Undecided → High
status: New → Confirmed
Revision history for this message
Tony Pursell (ajpursell) wrote :

Just lost window decoration with nothing running in Wine.

Revision history for this message
Tony Pursell (ajpursell) wrote :

Got the following message, repeated 8 times in .xsession-errors

compiz (decor) - Warn: No default decoration found, placement will not be correct

Changed in compiz:
milestone: none → 0.9.8.0
Changed in compiz-core:
milestone: 0.9.8.0 → none
Revision history for this message
Sean Dague (sdague) wrote :

This crash typically coincides with attempting to draw a menu in lotus notes. So click on a menu element, and the moment it paints, crash. There really is no debug info after that. Any way to turn on a more real crash handler in compiz to get to the bottom of this?

Bracken (abdawson)
summary: - gtk-window-decorator crashes regularly
+ gtk-window-decorator crashes frequently
Revision history for this message
Tony Pursell (ajpursell) wrote :

I'm not sure why you changed the summary from regularly to frequently. For my part I can 'reliably' cause this to happen as described in #9 above.

The program's main window has full decoration and a menu bar as shown here

http://ubuntuone.com/0NyEqOsijXKZFIopp8uBn6

as the game progresses a modal Play Again window is shown, as here

http://ubuntuone.com/5uDYBHTGVqMj6MWk3F8n7v

After about 7-10 plays, on return from the Play Again window, the decoration on the main window is lost.

If I have previously restored window decoration with gtk-window-decorator --replace then I get a message in the terminal similar to that shown in #5 above.

Revision history for this message
Tony Pursell (ajpursell) wrote :
Revision history for this message
Tony Pursell (ajpursell) wrote :
Revision history for this message
GonzO (gonzo) wrote :

IME: the defect occurs when summoning a modal dialog. I can keep the target program open (in my case, Lotus Notes) and use it for as long as I want without decoration loss as long as I do nothing that creates a modal dialog.

I can pretty much trigger the issue at will by summoning modal dialogs.

Revision history for this message
Enkouyami (furyhamster) wrote :

My bug #1005629 could have useful information.

Revision history for this message
subvertbeats (subvertbeats) wrote :

I experience exactly the same as GonzO

And am using the same applications (IBMer by any chance? :) )

Revision history for this message
GonzO (gonzo) wrote :

@subvertbeats: Indeed!

Revision history for this message
Daniel van Vugt (vanvugt) wrote :

As an ex-IBMer, I can also suggest try running the win32 version of Lotus Notes in Wine, instead of the native Linux client. It used much less resources and was stable for me under compiz for years. Only one minor bug with some fonts (http://bugs.winehq.org/show_bug.cgi?id=7520).

Revision history for this message
Álvaro Lobato (alvarolobato) wrote :

I have the exact same problem and it happens every time I hit "Reply" to an email.

Revision history for this message
Chris Giltnane (chris-giltnane) wrote :

In 12.10 this seems to be mostly resolved for Lotus Notes and Sametime but gpodder will trigger this problem pretty much every time I use it

Revision history for this message
Daniel van Vugt (vanvugt) wrote :

I can't prove it's the same bug but we might have fixed this today in bug 1019337.

Revision history for this message
GonzO (gonzo) wrote :

That would be so hot.

Thanks for your work, even if it doesn't fix this one.

Revision history for this message
Bracken (abdawson) wrote :

I think 1019337 may well be the same thing, on holiday at the moment but I'll grab this update as soon as I get back to my work machine and let you know.

Revision history for this message
Daniel van Vugt (vanvugt) wrote :

BigglesPiP, could you please try getting a stack trace so we can know the offending region of code?

To get a stack trace...

1. env DISPLAY=:0 gdb /usr/bin/gtk-window-decorator
2. (gdb) break _XError
3. (gdb) run --sync --replace
4. Trigger the crash.
5. (gdb) bt
6. Copy the output from gdb and paste it here.

Changed in compiz:
status: Confirmed → Incomplete
Changed in compiz-core:
status: Confirmed → Incomplete
Changed in compiz (Ubuntu):
status: Confirmed → Incomplete
Revision history for this message
Daniel van Vugt (vanvugt) wrote :

Sorry, correction: Do NOT break on _XError. Please break on "exit" instead:
    2. (gdb) break exit

Revision history for this message
Daniel van Vugt (vanvugt) wrote :

And if that doesn't work, try:
    break _exit

:)

Revision history for this message
Bracken (abdawson) wrote :

I installed the fix for 1019337 yesterday, the window decorator is still crashing today, I'm going to try out the above debug when I get a moment.

Revision history for this message
Erik Mathis (erik-mathis) wrote :

Same here, Jisti is causing the crash for me.

emathis@emathis-lappy:~$ env DISPLAY=:0 gdb /usr/bin/gtk-window-decorator
GNU gdb (Ubuntu/Linaro 7.4-2012.04-0ubuntu2) 7.4-2012.04
Copyright (C) 2012 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-linux-gnu".
For bug reporting instructions, please see:
<http://bugs.launchpad.net/gdb-linaro/>...
Reading symbols from /usr/bin/gtk-window-decorator...(no debugging symbols found)...done.
(gdb) break exit
Function "exit" not defined.
Make breakpoint pending on future shared library load? (y or [n]) y
Breakpoint 1 (exit) pending.
(gdb) run --sync --replace
Starting program: /usr/bin/gtk-window-decorator --sync --replace
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
[New Thread 0x7fffef5c4700 (LWP 14572)]
[New Thread 0x7fffeedc3700 (LWP 14573)]
The program 'gtk-window-decorator' received an X Window System error.
This probably reflects a bug in the program.
The error was 'BadWindow (invalid Window parameter)'.
  (Details: serial 22047 error_code 3 request_code 2 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.)

Breakpoint 1, 0x00007ffff4ffc990 in exit () from /lib/x86_64-linux-gnu/libc.so.6
(gdb) bt
#0 0x00007ffff4ffc990 in exit () from /lib/x86_64-linux-gnu/libc.so.6
#1 0x00007ffff6bcb75e in ?? () from /usr/lib/x86_64-linux-gnu/libgdk-x11-2.0.so.0
#2 0x00007ffff76d336f in _XError () from /usr/lib/x86_64-linux-gnu/libX11.so.6
#3 0x00007ffff76d0311 in ?? () from /usr/lib/x86_64-linux-gnu/libX11.so.6
#4 0x00007ffff76d0355 in ?? () from /usr/lib/x86_64-linux-gnu/libX11.so.6
#5 0x00007ffff76d1190 in _XReply () from /usr/lib/x86_64-linux-gnu/libX11.so.6
#6 0x00007ffff76ccaed in XSync () from /usr/lib/x86_64-linux-gnu/libX11.so.6
#7 0x00007ffff76ccb7b in ?? () from /usr/lib/x86_64-linux-gnu/libX11.so.6
#8 0x00007ffff76ca2bd in XSelectInput () from /usr/lib/x86_64-linux-gnu/libX11.so.6
#9 0x000000000041421e in event_filter_func ()
#10 0x00007ffff6bc1e26 in ?? () from /usr/lib/x86_64-linux-gnu/libgdk-x11-2.0.so.0
#11 0x00007ffff6bc3bd6 in ?? () from /usr/lib/x86_64-linux-gnu/libgdk-x11-2.0.so.0
#12 0x00007ffff6bc3c7e in ?? () from /usr/lib/x86_64-linux-gnu/libgdk-x11-2.0.so.0
#13 0x00007ffff5b16d53 in g_main_context_dispatch () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#14 0x00007ffff5b170a0 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#15 0x00007ffff5b1749a in g_main_loop_run () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#16 0x00007ffff6f4e2f7 in gtk_main () from /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0
#17 0x000000000040ad50 in main ()

Revision history for this message
Daniel van Vugt (vanvugt) wrote :

Thanks Erik. However we can't yet be sure your crash is exactly the same as the one the reporter of this bug experiences. So please log the above info in a new bug: https://bugs.launchpad.net/compiz/+filebug

Revision history for this message
Bracken (abdawson) wrote :

alandaws@ABD-W510 ~ $ env DISPLAY=:0 gdb /usr/bin/gtk-window-decorator
GNU gdb (Ubuntu/Linaro 7.4-2012.04-0ubuntu2) 7.4-2012.04
Copyright (C) 2012 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. Type "show copying"
and "show warranty" for details.
This GDB was configured as "i686-linux-gnu".
For bug reporting instructions, please see:
<http://bugs.launchpad.net/gdb-linaro/>...
Reading symbols from /usr/bin/gtk-window-decorator...(no debugging symbols found)...done.
(gdb) break exit
Function "exit" not defined.
Make breakpoint pending on future shared library load? (y or [n]) y
Breakpoint 1 (exit) pending.
(gdb) run --sync --replace
Starting program: /usr/bin/gtk-window-decorator --sync --replace
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/i386-linux-gnu/libthread_db.so.1".
[New Thread 0xb6cbab40 (LWP 17699)]
[New Thread 0xb62ffb40 (LWP 17700)]
The program 'gtk-window-decorator' received an X Window System error.
This probably reflects a bug in the program.
The error was 'BadWindow (invalid Window parameter)'.
  (Details: serial 11960 error_code 3 request_code 20 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.)

Breakpoint 1, 0xb747ffc0 in exit () from /lib/i386-linux-gnu/libc.so.6
(gdb)

The crash always happens when replying to emails in notes, seemingly when a pulldown menu appears. It happens that often that I mapped ctrl+shift+g to restart the window decorator.

Revision history for this message
Daniel van Vugt (vanvugt) wrote :

Thanks, but you forgot step 5 from comment #26. And it's the most important one :)

Revision history for this message
Bracken (abdawson) wrote :

Oops

alandaws@ABD-W510 ~ $ env DISPLAY=:0 gdb /usr/bin/gtk-window-decorator
GNU gdb (Ubuntu/Linaro 7.4-2012.04-0ubuntu2) 7.4-2012.04
Copyright (C) 2012 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. Type "show copying"
and "show warranty" for details.
This GDB was configured as "i686-linux-gnu".
For bug reporting instructions, please see:
<http://bugs.launchpad.net/gdb-linaro/>...
Reading symbols from /usr/bin/gtk-window-decorator...(no debugging symbols found)...done.
(gdb) break exit
Function "exit" not defined.
Make breakpoint pending on future shared library load? (y or [n]) y
Breakpoint 1 (exit) pending.
(gdb) run --sync --replace
Starting program: /usr/bin/gtk-window-decorator --sync --replace
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/i386-linux-gnu/libthread_db.so.1".
[New Thread 0xb6cbab40 (LWP 3541)]
[New Thread 0xb62ffb40 (LWP 3542)]
The program 'gtk-window-decorator' received an X Window System error.
This probably reflects a bug in the program.
The error was 'BadWindow (invalid Window parameter)'.
  (Details: serial 10060 error_code 3 request_code 20 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.)

Breakpoint 1, 0xb747ffc0 in exit () from /lib/i386-linux-gnu/libc.so.6
(gdb) bt
#0 0xb747ffc0 in exit () from /lib/i386-linux-gnu/libc.so.6
#1 0xb7983c40 in ?? () from /usr/lib/i386-linux-gnu/libgdk-x11-2.0.so.0
#2 0xb7eb3acb in _XError () from /usr/lib/i386-linux-gnu/libX11.so.6
#3 0xb7eb089d in ?? () from /usr/lib/i386-linux-gnu/libX11.so.6
#4 0xb7eb1897 in _XReply () from /usr/lib/i386-linux-gnu/libX11.so.6
#5 0xb7e96b1d in XGetWindowProperty () from /usr/lib/i386-linux-gnu/libX11.so.6
#6 0x0805daff in get_frame_type ()
#7 0x0805a9bc in event_filter_func ()
#8 0xb79797ae in ?? () from /usr/lib/i386-linux-gnu/libgdk-x11-2.0.so.0
#9 0xb797b67b in ?? () from /usr/lib/i386-linux-gnu/libgdk-x11-2.0.so.0
#10 0xb797b72d in ?? () from /usr/lib/i386-linux-gnu/libgdk-x11-2.0.so.0
#11 0xb76bdd86 in g_main_context_dispatch () from /lib/i386-linux-gnu/libglib-2.0.so.0
#12 0xb76be125 in ?? () from /lib/i386-linux-gnu/libglib-2.0.so.0
#13 0xb76be56b in g_main_loop_run () from /lib/i386-linux-gnu/libglib-2.0.so.0
#14 0xb7b08b8f in gtk_main () from /usr/lib/i386-linux-gnu/libgtk-x11-2.0.so.0
#15 0x08050276 in main ()

Revision history for this message
Daniel van Vugt (vanvugt) wrote :

Thanks BigglesPiP. That confirms it's the same as bug 1019337, which is already fixed (and soon to be released).

Revision history for this message
Dan Smith (danms) wrote :

Here's a backtrace:

#0 0x00007fdd843d9990 in exit () from /lib/x86_64-linux-gnu/libc.so.6
#1 0x00007fdd85fa875e in ?? ()
   from /usr/lib/x86_64-linux-gnu/libgdk-x11-2.0.so.0
#2 0x00007fdd86ab036f in _XError () from /usr/lib/x86_64-linux-gnu/libX11.so.6
#3 0x00007fdd86aad311 in ?? () from /usr/lib/x86_64-linux-gnu/libX11.so.6
#4 0x00007fdd86aae297 in _XReply () from /usr/lib/x86_64-linux-gnu/libX11.so.6
#5 0x00007fdd86a93ec4 in XGetWindowProperty ()
   from /usr/lib/x86_64-linux-gnu/libX11.so.6
#6 0x0000000000416ff5 in get_frame_type ()
#7 0x0000000000414478 in event_filter_func ()
#8 0x00007fdd85f9ee26 in ?? ()
   from /usr/lib/x86_64-linux-gnu/libgdk-x11-2.0.so.0
#9 0x00007fdd85fa0bd6 in ?? ()
   from /usr/lib/x86_64-linux-gnu/libgdk-x11-2.0.so.0
#10 0x00007fdd85fa0c7e in ?? ()
   from /usr/lib/x86_64-linux-gnu/libgdk-x11-2.0.so.0
#11 0x00007fdd84ef3d53 in g_main_context_dispatch ()
   from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#12 0x00007fdd84ef40a0 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#13 0x00007fdd84ef449a in g_main_loop_run ()
   from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#14 0x00007fdd8632b2f7 in gtk_main ()
   from /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0
#15 0x000000000040ad50 in main ()

Do I need some dbg packages to make this more useful?

Revision history for this message
Christopher (soft-kristal) wrote :

I upgraded one partition to Trusty yesterday and this is still an issue. I can see the decorations disappear in some cases while running a Wine program, regardless of which version of Wine is running.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.