After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 630864 - fatal X error: BadMatch
fatal X error: BadMatch
Status: RESOLVED FIXED
Product: gtk+
Classification: Platform
Component: Backend: X11
2.90.x
Other Linux
: Normal major
: ---
Assigned To: gtk-bugs
gtk-bugs
Depends on:
Blocks:
 
 
Reported: 2010-09-28 23:59 UTC by Maxim Ermilov
Modified: 2010-09-29 10:26 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Maxim Ermilov 2010-09-28 23:59:37 UTC
--sync backtrace

To reproduce:
1. open gnome-terminal
2. open new window
3. close window


(gdb) backtrace
  • #0 _exit
    from /lib64/libc.so.6
  • #1 exit
    from /lib64/libc.so.6
  • #2 _gdk_x11_display_error_event
    at gdkdisplay-x11.c line 2756
  • #3 gdk_x_error
    at gdkmain-x11.c line 379
  • #4 _XError
    from /usr/lib64/libX11.so.6
  • #5 ??
    from /usr/lib64/libX11.so.6
  • #6 _XReply
    from /usr/lib64/libX11.so.6
  • #7 XSync
    from /usr/lib64/libX11.so.6
  • #8 ??
    from /usr/lib64/libX11.so.6
  • #9 XSetWindowBackgroundPixmap
    from /usr/lib64/libX11.so.6
  • #10 gdk_window_x11_set_background
    at gdkwindow-x11.c line 2642
  • #11 _gdk_window_destroy_hierarchy
    at gdkwindow.c line 1986
  • #12 gdk_window_destroy
    at gdkwindow.c line 2096
  • #13 meta_frames_unmanage_window
    at ui/frames.c line 689
  • #14 meta_window_destroy_frame
    at core/frame.c line 222
  • #15 meta_window_unmanage
    at core/window.c line 1459
  • #16 event_callback
    at core/display.c line 2246
  • #17 filter_func
    at ui/ui.c line 87
  • #18 gdk_event_apply_filters
    at gdkeventsource.c line 71
  • #19 gdk_event_source_translate_event
    at gdkeventsource.c line 144
  • #20 _gdk_events_queue
    at gdkeventsource.c line 275
  • #21 gdk_display_get_event
    at gdkdisplay.c line 382
  • #22 gdk_event_source_dispatch
    at gdkeventsource.c line 297
  • #23 g_main_dispatch
    at gmain.c line 2149
  • #24 g_main_context_dispatch
    at gmain.c line 2702
  • #25 g_main_context_iterate
    at gmain.c line 2780
  • #26 g_main_loop_run
    at gmain.c line 2988
  • #27 main
    at core/main.c line 725

Comment 1 drago01 2010-09-29 07:44:57 UTC
As this seems like a new crash inside gdk, it is very likely that one of the recent gdk/gtk changes are to blame.

Benjamin any idea?

(Or we could add traps around gdk_window_destroy but that looks wrong to me).
Comment 2 Benjamin Otte (Company) 2010-09-29 10:26:01 UTC
commit 1408bd9a37f0444ba968f5198e5ad96f5f2ab5cb
Author: Benjamin Otte <otte@redhat.com>
Date:   Wed Sep 29 12:07:12 2010 +0200

    gdk: Don't (un)set the background when destroying a window.
    
    This previously caused the x11 code to do a XSetWindowBackgroundPixmap
    call on a window that was about to be destroyed. And that's not really
    useful.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=630864

commit 82e6e32c770ac42187dc8a58ebf9ac99b35dfdd4
Author: Benjamin Otte <otte@redhat.com>
Date:   Wed Sep 29 12:06:19 2010 +0200

    x11: Don't set ParentRealtive if the parent's visual is different
    
    Causes a BadMatch otherwise, see code comments.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=630864