Date: Thu, 17 Oct 2002 12:01:43 +0200 (CEST) From: Martin Blapp <mb@imp.ch> To: <dev@porting.openoffice.org> Cc: <openoffice@freebsd.org>, <kan@freebsd.org>, <kevin.hendricks@sympatico.ca> Subject: FreeBSD: OOo 1.01 Mutex.acquire crash in File -> Autopilot -> Formular Message-ID: <20021017105402.N90671-100000@levais.imp.ch> In-Reply-To: <Pine.LNX.4.44.0210171019580.5124-100000@thalys.mandrakesoft.com>
next in thread | previous in thread | raw e-mail | index | archive | help
Hi all,
Has someone else seen this on other platforms ?
All other autopilot function do work.
There is not bug report in GNATS about this crash.
Maybe this is already fixed in 643 tree ? I'm working now to get
643 running here, so I can submit patches again and remove the obsoleted
gnats reports I sent.
Program received signal SIGSEGV, Segmentation fault.
#0 0x00000000 in ?? ()
#1 0x2ad315d2 in VCLXFixedText::getPreferredSize() (this=0xbfbfe4d4)
at
/usr/ports/german/openoffice/work/oo_1.0.1_src/toolkit/source/awt/vclxwindows.cxx:1974
#2 0x2b7c7cdd in Lcopy ()
at
/usr/ports/german/openoffice/work/oo_1.0.1_src/bridges/source/cpp_uno/gcc3_freebsd_intel/uno2cpp.cxx:100
#3 0x2b7c81ec in cpp_call (pThis=0x2d31aba8, nVtableCall=4,
pReturnTypeRef=0x2ce85620, nParams=0, pParams=0x0,
pUnoReturn=0xbfbfe4e0, pUnoArgs=0xbfbfe4e0, ppUnoExc=0xbfbfe548)
at
/usr/ports/german/openoffice/work/oo_1.0.1_src/bridges/source/cpp_uno/gcc3_freebsd_intel/uno2cpp.cxx:266
#4 0x2b7c88d3 in gcc3::cppu_unoInterfaceProxy_dispatch(_uno_Interface*,
_typelib_TypeDescription const*, void*, void**, _uno_Any**) (pUnoI=0x2d31aba8,
pMemberDescr=0x2d0f0990, pReturn=0xbfbfe4e0, pArgs=0xbfbfe4e0,
ppException=0xbfbfe548)
at
/usr/ports/german/openoffice/work/oo_1.0.1_src/bridges/source/cpp_uno/gcc3_freebsd_intel/uno2cpp.cxx:427
#5 0x2cb44602 in
stoc_corefl::IdlInterfaceMethodImpl::invoke(com::sun::star::uno::Any const&,
com::sun::star::uno::Sequence<com::sun::star::uno::Any>&) () from
/usr/local/OpenOffice.org1.0/program/libcorefl.so
#6 0x2cb17e19 in
stoc_inspect::IntrospectionAccessStatic_Impl::getPropertyValueByIndex(com::sun::star::uno::Any
const&, long) const () from /usr/local/OpenOffice.org1.0/program/libinsp.so
#7 0x2cb17b45 in
stoc_inspect::IntrospectionAccessStatic_Impl::getPropertyValue(com::sun::star::uno::Any
const&, rtl::OUString const&) const () from
/usr/local/OpenOffice.org1.0/program/libinsp.so
#8 0x2cb1af58 in
stoc_inspect::ImplIntrospectionAdapter::getPropertyValue(rtl::OUString const&)
()
from /usr/local/OpenOffice.org1.0/program/libinsp.so
#9 0x2ab1fff8 in SbUnoObject::Notify(SfxBroadcaster&, SfxHint const&) ()
from /usr/local/OpenOffice.org1.0/program/libsb641fi.so
#10 0x2816a7fe in SfxBroadcaster::Broadcast(SfxHint const&) ()
from /usr/local/OpenOffice.org1.0/program/libsvl641fi.so
(gdb) frame 1
#1 0x2ad315d2 in VCLXFixedText::getPreferredSize() (this=0xbfbfe4d4)
at
/usr/ports/german/openoffice/work/oo_1.0.1_src/toolkit/source/awt/vclxwindows.cxx:1974
1974 return getMinimumSize();
(gdb) list
1969 return AWTSize(aSz);
1970 }
1971
1972 ::com::sun::star::awt::Size VCLXFixedText::getPreferredSize( )
throw(::com::sun::star::uno::RuntimeException)
1973 {
1974 return getMinimumSize();
1975 }
1976
1977 ::com::sun::star::awt::Size VCLXFixedText::calcAdjustedSize( const
::com::sun::star::awt::Size& rNewSize )
throw(::com::sun::star::uno::RuntimeException)
Then I tried to set breakpoints ... I hit Breakpoint 2 many times ... and the
last one showed like.
Breakpoint 2, cpp_call (pThis=0x2d31a8e8, nVtableCall=4,
pReturnTypeRef=0x2ce8bf68, nParams=0, pParams=0x0,
pUnoReturn=0xbfbfe4e0, pUnoArgs=0xbfbfe4e0, ppUnoExc=0xbfbfe548)
at
/usr/ports/german/openoffice/work/oo_1.0.1_src/bridges/source/cpp_uno/gcc3_freebsd_intel/uno2cpp.cxx:266
266 callVirtualMethod(
(gdb) c
Continuing.
Breakpoint 1, VCLXFixedText::getPreferredSize() (this=0xbfbfe4d4)
at
/usr/ports/german/openoffice/work/oo_1.0.1_src/toolkit/source/awt/vclxwindows.cxx:1974
1974 return getMinimumSize();
(gdb) p VCLXFixedText::getPreferredSize
$12 = (Size ( VCLXFixedText::&)) -2147483636
(gdb) p this
$13 = (VCLXFixedText * const) 0xbfbfe4d4
(gdb) p 0xbfbfe4d4
$14 = 3217024212
(gdb) p getMinimumSize
can't find linker symbol for virtual table for `VCLXFixedText' value
(gdb) p VCLXFixedText::getMinimumSize
$15 = (Size ( VCLXFixedText::&)) -2147483637
If I change line 1974 to show like VCLXFixedText::getMinimumSize, it crashes
later, still in the same namespace. I think if I change all these functions, it
will work.
Is this normal ? gcc error ?
Maybe -frtti is needed ? I compiled the library with -f rtti and the trace got
better ... See below ...
Program received signal SIGSEGV, Segmentation fault.
0x2ad49197 in OGuard (this=0xbfbfe2d8, rMutex=@0x80625b6)
at
/usr/ports/german/openoffice/work/oo_1.0.1_src/solver/641/unxfbsd.pro/inc/vos/mutex.hxx:167
167 m_rMutex.acquire();
Current language: auto; currently c++
(gdb) list
162 m_rMutex.acquire();
163 }
164 OGuard(IMutex & rMutex)
165 : m_rMutex( rMutex )
166 {
167 m_rMutex.acquire();
168 }
169
170 /** Releases mutex. */
171 virtual ~OGuard()
#0 0x2ad49197 in OGuard (this=0xbfbfe2d8, rMutex=@0x80625b6)
at
/usr/ports/german/openoffice/work/oo_1.0.1_src/solver/641/unxfbsd.pro/inc/vos/mutex.hxx:167
#1 0x2ad7d89e in VCLXFixedText::getMinimumSize() (this=0xbfbfe4d4)
at
/usr/ports/german/openoffice/work/oo_1.0.1_src/toolkit/source/awt/vclxwindows.cxx:1963
#2 0x2ad7d99c in VCLXFixedText::getPreferredSize() (this=0xbfbfe4d4)
at
/usr/ports/german/openoffice/work/oo_1.0.1_src/toolkit/source/awt/vclxwindows.cxx:1974
#3 0x2b832cdd in Lcopy ()
at
/usr/ports/german/openoffice/work/oo_1.0.1_src/bridges/source/cpp_uno/gcc3_freebsd_intel/uno2cpp.cxx:100
#4 0x2b8331ec in cpp_call (pThis=0x2d38d498, nVtableCall=4,
pReturnTypeRef=0x2d0fac48, nParams=0, pParams=0x0,
pUnoReturn=0xbfbfe4e0, pUnoArgs=0xbfbfe4e0, ppUnoExc=0xbfbfe548)
at
/usr/ports/german/openoffice/work/oo_1.0.1_src/bridges/source/cpp_uno/gcc3_freebsd_intel/uno2cpp.cxx:266
#5 0x2b8338d3 in gcc3::cppu_unoInterfaceProxy_dispatch(_uno_Interface*,
_typelib_TypeDescription const*, void*, void**, _uno_Any**) (pUnoI=0x2d38d498,
pMemberDescr=0x2d162148, pReturn=0xbfbfe4e0, pArgs=0xbfbfe4e0,
ppException=0xbfbfe548)
at
/usr/ports/german/openoffice/work/oo_1.0.1_src/bridges/source/cpp_uno/gcc3_freebsd_intel/uno2cpp.cxx:427
Martin
Martin Blapp, <mb@imp.ch> <mbr@FreeBSD.org>
------------------------------------------------------------------
ImproWare AG, UNIXSP & ISP, Zurlindenstrasse 29, 4133 Pratteln, CH
Phone: +41 061 826 93 00: +41 61 826 93 01
PGP: <finger -l mbr@freebsd.org>
PGP Fingerprint: B434 53FC C87C FE7B 0A18 B84C 8686 EF22 D300 551E
------------------------------------------------------------------
To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-openoffice" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20021017105402.N90671-100000>
