Apache OpenOffice (AOO) Bugzilla – Issue 3565
selecting any menu item from Bibliography database causes OpenOffice.org to crash
Last modified: 2003-03-24 08:52:17 UTC
Build 641D RedHat 6.2 Select tools - bibliography database. A new window 'bibliography database' will be launched. Select any item from the main menu bar e.g. File in the bibliography database window OpenOffice.org will crash. possible related to issue 1721 ?.
"rkinsella", just to be sure about the terminology: With "selecting", you really mean clicking onto a menu entry? An entry which is expected to contain a sub menu? Or is "selecting" just moving the mouse over a poup menu (which triggers a "selection", too, but is not the same as choosing the entry)? This is an importance difference in terms of where this bug belongs to ..... Frank
maybe, does it also occur on the other platforms ?
'Selecting' means user must click on e.g. File for crash to occur
This means SO crashs when the popup menu is expected to come up. And this means this bug belongs to the graphic system layer (as at this moment, no bibligraphy specific code is invoked, yet). Reassigning to graphic system layer (gsl) and the owner of that module.
stack trace: #1 0x409d7acc in pthread_kill () from /lib/libpthread.so.0 #2 0x409d7fd6 in raise () from /lib/libpthread.so.0 #3 0x40b53c81 in abort () from /lib/libc.so.6 #4 0x40c89ba5 in __cxxabiv1::__terminate(void (*)()) ( handler=0x8057d20 <abort>) at ../../../../gcc-3.0.2/libstdc++-v3/libsupc++/eh_terminate.cc:47 #5 0x40c8a122 in ?? () at ../../../../gcc-3.0.2/libstdc++-v3/libsupc++/eh_personality.cc:381 #6 0x080717d3 in _Unwind_RaiseException_Phase2 (exc=0x812f240, context=0xbfffe280) at ../../gcc-3.0.2/gcc/unwind-dw2.c:1045 #7 0x08071bd0 in _Unwind_Resume (exc=0x812f240) at ../../gcc-3.0.2/gcc/unwind-dw2.c:1045 #8 0x426701de in cppu::any2bool(com::sun::star::uno::Any const&) () from /tmp/mh93703/OpenOffice.org641/program/libsvx641li.so #9 0x43ac0f6d in framework::MenuManager::statusChanged(com::sun::star::frame::FeatureStateEvent const&) () from /tmp/mh93703/OpenOffice.org641/program/libfwk641li.so #10 0x42a2de31 in SfxDispatchController_Impl::addStatusListener(com::sun::star::uno::Reference<com::sun::star::frame::XStatusListener> const&, com::sun::star::util::URL const&) () from /tmp/mh93703/OpenOffice.org641/program/libsfx641li.so #11 0x42a2cbdf in SfxOfficeDispatch::addStatusListener(com::sun::star::uno::Reference<com::sun::star::frame::XStatusListener> const&, com::sun::star::util::URL const&) () from /tmp/mh93703/OpenOffice.org641/program/libsfx641li.so #12 0x43ac4f60 in framework::MenuManager::Activate(Menu*) () from /tmp/mh93703/OpenOffice.org641/program/libfwk641li.so #13 0x43ac483d in framework::MenuManager::LinkStubActivate(void*, void*) () from /tmp/mh93703/OpenOffice.org641/program/libfwk641li.so #14 0x402a86fe in Menu::Activate() () from /tmp/mh93703/OpenOffice.org641/program/libvcl641li.so #15 0x402ac033 in PopupMenu::ImplExecute(Window*, Rectangle const&, unsigned long, Menu*, unsigned char) () from /tmp/mh93703/OpenOffice.org641/program/libvcl641li.so #16 0x402af1a0 in MenuBarWindow::ImplCreatePopup(unsigned char) () from /tmp/mh93703/OpenOffice.org641/program/libvcl641li.so #17 0x402af5bd in MenuBarWindow::ChangeHighlightItem(unsigned short, unsigned char, unsigned char) () from /tmp/mh93703/OpenOffice.org641/program/libvcl641li.so #18 0x402af35a in MenuBarWindow::MouseButtonDown(MouseEvent const&) () from /tmp/mh93703/OpenOffice.org641/program/libvcl641li.so #19 0x402ded6d in ImplHandleMouseEvent(Window*, unsigned short, unsigned char, long, long, unsigned long, unsigned short, unsigned short) () from /tmp/mh93703/OpenOffice.org641/program/libvcl641li.so #20 0x402e0bf7 in ImplWindowFrameProc(void*, SalFrame*, unsigned short, void const*) () from /tmp/mh93703/OpenOffice.org641/program/libvcl641li.so #21 0x40333504 in SalFrameData::HandleMouseEvent(_XEvent*) ()
I get more or less the same stack trace. on RH7 (except no unmangling)
It seems to be a compiler problem; 3.0.1 and 3.0.4 are ok, 3.0.2 is failing.
I think I've found out what's going on here. cppu::any2bool is used five time in svx: dbaexchange.cxx eschesdo.cxx fmgridcl.cxx fmshimp.cxx msocximex.cxx In all these cases gcc-3.0.1 creates 5 symbols with regard to the IllegalArgumentException: 00000000 W _ZN3com3sun4star4lang24IllegalArgumentExceptionC1ERKS3_ 00000000 W _ZN3com3sun4star4lang24IllegalArgumentExceptionC1Ev 00000000 W _ZN3com3sun4star4lang24IllegalArgumentExceptionD1Ev 00000000 V _ZTIN3com3sun4star4lang24IllegalArgumentExceptionE 00000000 V _ZTSN3com3sun4star4lang24IllegalArgumentExceptionE Please note the two first symbols, these are the default ctor and the copy ctor. I think they are generated because cppu::any2bool is a inline method which throws exceptions (and has to create the exception in the first place). There are many places where IllegalArgumentExceptions are used in svx, but all other object files need only the last 3 symbols (dtor and typeinfo). I've compiled the mentioned five files with gcc-3.0.3 and the ctor symbols are missing. The resulting svx library exhibits the bibliography failure. Recompiling with gcc-3.0.1 brings the symbols back and everything works. Either the gcc exception handling has changed again with gcc-3.0.2 or the newer versions are broken.
I compiled OOO_STABLE_1 last night with gcc-3.0.4 and binutils 2.12. biblio is running, and if I look into the object files I still see only the last the symbols exported, but it is still running.
Ok, that leaves only one conclusion. The details of exception handling have changed from gcc-3.0.1 to gcc-3.0.2. Newer binutils are needed to take care that the exceptions are still delivered correctly. Binutils-2.12 have been verified to work with at least gcc-3.0.4
fixed with 3.04 and binutils 2.12.
As agreed on I will close these resolved fixed issues now. If you have trouble with that, please re-open the issue.