Java/SWING + VCL / X crasher ...

Andrew Haley aph at redhat.com
Fri Nov 30 03:29:56 PST 2012


On 11/24/2012 06:02 PM, Michael Meeks wrote:

> 	Sorry to bother you; just visiting some friends at Munich hosting a
> hack-fest; and they have an interesting problem with OpenJDK. It -seems-
> that even though we initialise X with XInitThreads - before Java gets
> involved and all has worked well for a long time; that (as of recently)
> we fight over the (apparently global?) XSetErrorHandler and that causes
> a nice crash :-)
> 
> #0  JNU_CallStaticMethodByName (env=0x0, hasException=0x0, class_name=0x7a3fa571 "sun/awt/X11/XToolkit", name=0x7a3fa55e "globalErrorHandler", signature=0x7a3fa558 "(JJ)I")
>     at ../../../src/share/native/common/jni_util.c:209
> #1  0x7a3ca216 in ToolkitErrorHandler (dpy=0x808b1b0, event=0xbfff835c) at ../../../src/solaris/native/sun/xawt/XlibWrapper.c:1115
> #2  0x440c8acb in _XError (dpy=0x808b1b0, rep=0xab53cc0) at ../../src/XlibInt.c:1583
> #3  0x440c589d in handle_error (dpy=0x808b1b0, err=0xab53cc0, in_XReply=0) at ../../src/xcb_io.c:212
> #4  0x440c58f7 in handle_response (dpy=0x808b1b0, response=0xab53cc0, in_XReply=0) at ../../src/xcb_io.c:324
> #5  0x440c63e8 in _XEventsQueued (dpy=0x808b1b0, mode=1) at ../../src/xcb_io.c:363
> #6  0x440b7118 in XEventsQueued (dpy=0x808b1b0, mode=1) at ../../src/Pending.c:43
> #7  0x47dace8f in DisplayQueue (fd=14, pDisplay=0x81b50c8) at /home/limux/core/vcl/unx/generic/app/saldisp.cxx:407
> #8  0x47daa521 in YieldEntry::IsEventQueued (this=0x47e9b250) at /home/limux/core/vcl/unx/generic/app/saldata.cxx:593
> #9  0x47da9e18 in SalXLib::Yield (this=0x8060c60, bWait=true, bHandleAllCurrentEvents=false) at /home/limux/core/vcl/unx/generic/app/saldata.cxx:775
> #10 0x464cb7dc in KDEXLib::Yield (this=0x8060c58, bWait=true, bHandleAllCurrentEvents=false) at /home/limux/core/vcl/unx/kde4/KDEXLib.cxx:293
> #11 0x47dbd7f5 in X11SalInstance::Yield (this=0x804f780, bWait=true, bHandleAllCurrentEvents=false) at /home/limux/core/vcl/unx/generic/app/salinst.cxx:164
> #12 0x428fe2fa in ImplYield (i_bWait=true, i_bAllEvents=false) at /home/limux/core/vcl/source/app/svapp.cxx:425
> #13 0x428fa8fe in Application::Yield (i_bAllEvents=false) at /home/limux/core/vcl/source/app/svapp.cxx:459
> #14 0x428fa898 in Application::Execute () at /home/limux/core/vcl/source/app/svapp.cxx:404
> #15 0x4010d1f7 in desktop::Desktop::Main (this=0xbfff8ab8) at /home/limux/core/desktop/source/app/app.cxx:1713
> #16 0x42905baf in ImplSVMain () at /home/limux/core/vcl/source/app/svmain.cxx:162
> #17 0x42905ccd in SVMain () at /home/limux/core/vcl/source/app/svmain.cxx:199
> #18 0x4014ef9e in soffice_main () at /home/limux/core/desktop/source/app/sofficemain.cxx:83
> #19 0x0804873c in sal_main () at /home/limux/core/desktop/source/app/main.c:48
> #20 0x08048713 in main (argc=5, argv=0xbfff8bf4) at /home/limux/core/desktop/source/app/main.c:47
> 
> 	It seems to me that X's global error handler is the primary design
> drop-off here; there should be one per display (?). Having said that - I
> wonder if there is some nice way we can clobber Java's XError handler
> entirely, and/or stop it mis-behaving ?

Fixed thusly,  We'll see what the AWT devs say.

Andrew.

-------------- next part --------------
An embedded message was scrubbed...
From: Andrew Haley <aph at redhat.com>
Subject: <AWT Dev> Small fix for crasher in AWT
Date: Fri, 30 Nov 2012 10:55:41 +0000
Size: 4903
URL: <http://lists.freedesktop.org/archives/libreoffice/attachments/20121130/8bc9a90a/attachment.eml>


More information about the LibreOffice mailing list