Puzzling libreoffice SIGSEGV in libgcc3_uno.so C++ Ubuntu 14.04 LTS server- can you help?

asked 2016-09-01 17:36:08 +0200

hamish gravatar image

I get a segmentation violation in a call to defaultBootstrap_InitialComponentContext.

This is hidden in gdb output, except when run against libgcc3_uno debug library (LO 4.2.8 SDK) as in the following snippet (full output below):

#18 0x00007f6d73811120 in cppu::defaultBootstrap_InitialComponentContext (
    iniUri=...)
    at /build/libreoffice-wPXuqd/libreoffice-4.2.8/cppuhelper/source/defaultbootstrap.cxx:84
#19 0x00007f6d7381203c in cppu::defaultBootstrap_InitialComponentContext ()
    at /build/libreoffice-wPXuqd/libreoffice-4.2.8/cppuhelper/source/defaultbootstrap.cxx:110
#20 0x00007f6d7508e342 in grt::openoffice::Connection::openConnection() ()
   from /var/lib/jenkins/jobs/WebGIS/workspace/trunk/build/release/openoffice/oocommon/liboocommon.so
#21 0x000000000041bba1 in SpreadsheetOpenofficeService::initServiceLimited(boost::program_options::variables_map&) ()
#22 0x00007f6d74dd862b in zw::ZmqApplicationBase::exec() ()
   from /var/lib/jenkins/jobs/WebGIS/workspace/trunk/build/release/zmqworkers/zw-common/zw-common-server/libzw-common-server.so
#23 0x0000000000418027 in main ()

Running with standard libgcc3_uno (LO 4.2.8 SDK) I get:

Program received signal SIGSEGV, Segmentation fault.
0x00007fe688433f3b in ?? () from /usr/lib/ure/lib/libgcc3_uno.so
(gdb) bt
#0  0x00007fe688433f3b in ?? () from /usr/lib/ure/lib/libgcc3_uno.so
#1  0x00007fe68843b7c4 in privateSnippetExecutor ()
   from /usr/lib/ure/lib/libgcc3_uno.so
#2  0x00007fe68e51aaf5 in grt::openoffice::Connection::openConnection() ()
   from /var/lib/jenkins/jobs/WebGIS/workspace/trunk/build/release/openoffice/oocommon/liboocommon.so
#3  0x000000000041bba1 in SpreadsheetOpenofficeService::initServiceLimited(boost::program_options::variables_map&) ()
#4  0x00007fe68e26462b in zw::ZmqApplicationBase::exec() ()
   from /var/lib/jenkins/jobs/WebGIS/workspace/trunk/build/release/zmqworkers/zw-common/zw-common-server/libzw-common-server.so
#5  0x0000000000418027 in main ()

The reference to privateSnippetExecutor recurs in other scenarios (including runs with OO 4.1.2 SDK!). With LO 5.2 SDK I get:

Program received signal SIGSEGV, Segmentation fault.
0x00007f770a42d723 in cpp_vtable_call ()
   from /opt/libreoffice5.2/program/libgcc3_uno.so
(gdb) bt
#0  0x00007f770a42d723 in cpp_vtable_call ()
   from /opt/libreoffice5.2/program/libgcc3_uno.so
#1  0x00007f770a4346ea in privateSnippetExecutor ()
   from /opt/libreoffice5.2/program/libgcc3_uno.so
#2  0x00007f7711406af5 in grt::openoffice::Connection::openConnection() ()
   from /var/lib/jenkins/jobs/WebGIS/workspace/trunk/build/release/openoffice/oocommon/liboocommon.so
#3  0x000000000041bba1 in SpreadsheetOpenofficeService::initServiceLimited(boost::program_options::variables_map&) ()
#4  0x00007f771115062b in zw::ZmqApplicationBase::exec() ()
   from /var/lib/jenkins/jobs/WebGIS/workspace/trunk/build/release/zmqworkers/zw-common/zw-common-server/libzw-common-server.so
#5  0x0000000000418027 in main ()

Compiling with libgcc_uno debug library (LO 4.2.8 SDK) but running with standard gives:

Program received signal SIGSEGV, Segmentation fault.
0x00007eff6830cf3b in Reference (pInterface=0xb751b0, this=<optimised out>)
    at /build/libreoffice-wPXuqd/libreoffice-4.2.8/include/com/sun/star/uno/Reference.hxx:140
140 /build/libreoffice-wPXuqd/libreoffice-4.2.8/include/com/sun/star/uno/Reference.hxx: No such file or directory.

(gdb) bt

#0  0x00007eff6830cf3b in Reference (pInterface=0xb751b0, this=<optimised out>)
    at /build/libreoffice-wPXuqd/libreoffice-4.2.8/include/com/sun/star/uno/Reference.hxx:140


From /usr/include/com/sun/star/uno/Reference.hxx:

135 template< class interface_type >
136 inline Reference< interface_type >::Reference( interface_type * pInterface )     SAL_THROW(())
137 {
138     _pInterface = castToXInterface(pInterface);
139     if (_pInterface)
140         _pInterface->acquire();
141 }

#1  cpp_vtable_call (nFunctionIndex=1, nVtableOffset=<optimised out>,
    gpreg=<optimised out>, fpreg=0x7ffd66041c50, ovrflw=0x7ffd66041ca0,
    pRegisterReturn=0x7ffd66041c00)
    at /build/libreoffice-wPXuqd/libreoffice-4.2.8/bridges/source/cpp_uno/gcc3_linux_x86-64/cpp2uno.cxx:285

#2  0x00007eff683147c4 in privateSnippetExecutor ()
   from /usr/lib/ure ...
(more)
edit retag flag offensive close merge delete