[Xcb] xlibs problem ;)

Jamey Sharp jamey at minilop.net
Tue Apr 5 13:40:16 PDT 2005


How odd. I have Gimp 2.0.6, and it runs fine.

XCreateGlyphCursor calls _XTryShapeCursor, which uses a macro called
GetFunc, which tries to _XLockMutex(_Xglobal_lock). I don't know any
reason why that shouldn't work; while I've removed a number of uses of
the global lock, some rather important ones remain, and I've done
nothing to the code in XInitThreads, which initializes that lock.

I don't understand why your copy of the GIMP is even linked against
libpthread: as far as I can tell, the GIMP is a single-threaded
application. So it shouldn't have called XInitThreads, _XLockMutex_fn
should have been a null pointer, and _XLockMutex should never have been
called.

I'm not sure what to do with all that.

--Jamey

On Tue, Apr 05, 2005 at 01:43:08AM -0400, Jeremy Kolb wrote:
> Actually this is what I get on the backtrace, maybe a fun mutexy thing 
> going on? :
> 
> #0  0xffffe410 in ?? ()
> #1  0xbfffd228 in ?? ()
> #2  0x00000002 in ?? ()
> #3  0x00000000 in ?? ()
> #4  0xb709845e in siglongjmp () from /lib/libpthread.so.0
> #5  0xb7831a10 in pthread_mutex_lock () from /lib/libc.so.6
> #6  0xb76b3c7f in _XLockMutex (lip=0xfffffffc) at locking.c:103
> #7  0xb768e5fd in XCreateGlyphCursor (dpy=0x365d, source_font=29361415,
>     mask_font=29361415, source_char=60, mask_char=61, 
> foreground=0xb77167b0,
>     background=0xb77167a4) at CrGlCur.c:179
> #8  0xb768ea19 in XCreateFontCursor (dpy=0x83c7410, which=60) at Cursor.c:49
> #9  0xb7b195c5 in gdk_cursor_new_for_display ()
>    from /usr/lib/libgdk-x11-2.0.so.0
> #10 0x0815d89f in gimp_dockable_get_type ()
> #11 0xb79e6654 in g_cclosure_marshal_VOID__VOID ()
>    from /usr/lib/libgobject-2.0.so.0
> #12 0xb79cf729 in g_type_class_meta_marshal ()
>    from /usr/lib/libgobject-2.0.so.0
> #13 0xb79cf399 in g_closure_invoke () from /usr/lib/libgobject-2.0.so.0
> #14 0xb79e48b2 in signal_emit_unlocked_R () from 
> /usr/lib/libgobject-2.0.so.0
> #15 0x00000000 in ?? ()
> #16 0x00000001 in ?? ()
> #17 0xbfffd620 in ?? ()
> ---Type <return> to continue, or q <return> to quit---
> #18 0xbfffd4e8 in ?? ()
> #19 0x08a8d090 in ?? ()
> #20 0xbfffd448 in ?? ()
> #21 0xb7944487 in g_datalist_id_set_data_full () from 
> /usr/lib/libglib-2.0.so.0
> Previous frame inner to this frame (corrupt stack?)
> (gdb)
> 
> Jeremy
> 
> 
> Jeremy Kolb wrote:
> >keithp just reminded me about the fixes to xlibs/xcb.  While it seems to 
> >work, I've noticed that gimp is broken (only program I can find right 
> >now that doesn't like it).  Unfortunately my libs/progs are all stripped 
> > so I can't trace it, but when I start gimp I get the splash screen 
> >etc... and then nothing.  No other windows, or messages and I have to 
> >ctrl-c to stop it at which point I get:
> >
> >gimp: terminated: Interrupt
> >/usr/lib/gimp/2.0/plug-ins/script-fu terminated: Interrupt
> >
> >Sorry this isn't much help, can someone else confirm that this is 
> >happening?  It's only happening with my X11 --with-xcb.
> >
> >Jeremy
> >_______________________________________________
> >xcb mailing list
> >xcb at lists.freedesktop.org
> >http://lists.freedesktop.org/mailman/listinfo/xcb
> 
> _______________________________________________
> xcb mailing list
> xcb at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/xcb


More information about the xcb mailing list