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 335424 - gdk_drawable_get_depth crash on startup
gdk_drawable_get_depth crash on startup
Status: RESOLVED DUPLICATE of bug 336254
Product: dia
Classification: Other
Component: general
CVS head
Other Linux
: Normal normal
: ---
Assigned To: Dia maintainers
Dia maintainers
Depends on:
Blocks:
 
 
Reported: 2006-03-21 21:46 UTC by Daniel Drake
Modified: 2006-05-13 22:04 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Daniel Drake 2006-03-21 21:46:27 UTC
I'm running glib-2.10 so critical messages cause the program to crash with SIGABRT.

When I start dia (0.94 or CVS HEAD), I instantly get the following message:
Gdk-CRITICAL **: gdk_drawable_get_depth: assertion `GDK_IS_DRAWABLE (drawable)' failed
aborting...

I got a backtrace:
  • #0 raise
    from /lib/libc.so.6
  • #1 abort
    from /lib/libc.so.6
  • #2 g_logv
    from /usr/lib/libglib-2.0.so.0
  • #3 g_log
    from /usr/lib/libglib-2.0.so.0
  • #4 gdk_drawable_get_depth
    from /usr/lib/libgdk-x11-2.0.so.0
  • #5 gtk_pixmap_set
    from /usr/lib/libgtk-x11-2.0.so.0
  • #6 gtk_pixmap_new
    from /usr/lib/libgtk-x11-2.0.so.0
  • #7 g_object_unref
    from /usr/lib/libgobject-2.0.so.0
  • #8 gtk_container_unset_focus_chain
    from /usr/lib/libgtk-x11-2.0.so.0
  • #9 g_closure_invoke
    from /usr/lib/libgobject-2.0.so.0
  • #10 g_signal_has_handler_pending
    from /usr/lib/libgobject-2.0.so.0
  • #11 g_signal_emit_valist
    from /usr/lib/libgobject-2.0.so.0
  • #12 g_signal_emit
    from /usr/lib/libgobject-2.0.so.0
  • #13 gtk_object_destroy
    from /usr/lib/libgtk-x11-2.0.so.0
  • #14 g_object_run_dispose
    from /usr/lib/libgobject-2.0.so.0
  • #15 gtk_wrap_box_forall
    at gtkwrapbox.c line 799
  • #16 fill_sheet_wbox
    at interface.c line 806
  • #17 create_sheets
    at interface.c line 1007
  • #18 create_toolbox
    at interface.c line 1294
  • #19 app_init
    at app_procs.c line 911
  • #20 main
    at main.c line 31

Comment 1 Hans Breuer 2006-03-23 17:11:06 UTC
The callstack looks rather smashed: e.g. g_object_unref certainly does
not call gtk_pixmap_new().

Are you sure you dont have more general problems with you 64bit 
environment?
Comment 2 Daniel Drake 2006-03-23 19:33:12 UTC
I have no instability or crashing problems elsewhere. I'll see if valgrind picks up any memory corruption.
Comment 3 Daniel Drake 2006-03-23 19:50:52 UTC
Doesn't see anything. valgrind says this about the crash:

Gdk-CRITICAL **: gdk_drawable_get_depth: assertion `GDK_IS_DRAWABLE (drawable)' failed
aborting...
==29147==
==29147== Invalid read of size 8
==29147==    at 0x75760AD: (within /lib64/libc-2.4.so)
==29147==    by 0x7575E28: (within /lib64/libc-2.4.so)
==29147==    by 0x75764D1: __libc_freeres (in /lib64/libc-2.4.so)
==29147==    by 0x491B41C: _vgw_freeres (in /usr/lib64/valgrind/amd64-linux/vgpreload_core.so)
==29147==    by 0x74BCC1D: abort (in /lib64/libc-2.4.so)
==29147==    by 0x6E5E824: g_logv (in /usr/lib64/libglib-2.0.so.0.1000.1)
==29147==    by 0x6E5E8B2: g_log (in /usr/lib64/libglib-2.0.so.0.1000.1)
==29147==    by 0x51F98E3: gdk_drawable_get_depth (in /usr/lib64/libgdk-x11-2.0.so.0.800.16)
==29147==    by 0x4F04719: gtk_pixmap_set (in /usr/lib64/libgtk-x11-2.0.so.0.800.16)
==29147==    by 0x4F0490C: (within /usr/lib64/libgtk-x11-2.0.so.0.800.16)
==29147==    by 0x6B0A157: g_object_unref (in /usr/lib64/libgobject-2.0.so.0.1000.1)
==29147==    by 0x4E598E0: (within /usr/lib64/libgtk-x11-2.0.so.0.800.16)
==29147==  Address 0x20 is not stack'd, malloc'd or (recently) free'd
==29147==
==29147== Process terminating with default action of signal 11 (SIGSEGV)
==29147==  Access not within mapped region at address 0x20
==29147==    at 0x75760AD: (within /lib64/libc-2.4.so)
==29147==    by 0x7575E28: (within /lib64/libc-2.4.so)
==29147==    by 0x75764D1: __libc_freeres (in /lib64/libc-2.4.so)
==29147==    by 0x491B41C: _vgw_freeres (in /usr/lib64/valgrind/amd64-linux/vgpreload_core.so)
==29147==    by 0x74BCC1D: abort (in /lib64/libc-2.4.so)
==29147==    by 0x6E5E824: g_logv (in /usr/lib64/libglib-2.0.so.0.1000.1)
==29147==    by 0x6E5E8B2: g_log (in /usr/lib64/libglib-2.0.so.0.1000.1)
==29147==    by 0x51F98E3: gdk_drawable_get_depth (in /usr/lib64/libgdk-x11-2.0.so.0.800.16)
==29147==    by 0x4F04719: gtk_pixmap_set (in /usr/lib64/libgtk-x11-2.0.so.0.800.16)
==29147==    by 0x4F0490C: (within /usr/lib64/libgtk-x11-2.0.so.0.800.16)
==29147==    by 0x6B0A157: g_object_unref (in /usr/lib64/libgobject-2.0.so.0.1000.1)
==29147==    by 0x4E598E0: (within /usr/lib64/libgtk-x11-2.0.so.0.800.16)
Comment 4 Fermin Molina 2006-03-28 16:20:26 UTC
Well, I'm getting similar crash with "gq-1.0beta1". It works ok with gtk+ 2.6
and now, with FC5 (gtk+ 2.8.15-1), it crashes always with:

Gdk-CRITICAL **: gdk_drawable_get_depth: assertion `GDK_IS_DRAWABLE
(drawable)' failed
aborting...
Aborted

when I close a window. I think this is another compatibility bug.
Same gq version with FC4 works ok.

I've read this, and I think that can be related to this bug:
http://mail.gnome.org/pipermail/gtk-app-devel-list/2005-August/msg00206.html

Cheers.
Comment 5 Hans Breuer 2006-05-13 22:04:35 UTC
gtk+ 2.8.17 should have this fixed

*** This bug has been marked as a duplicate of 336254 ***