Date: prev next · Thread: first prev next last
2013 Archives by date, by thread · List index


On 04/11/2013 04:58 PM, Matúš Kukan wrote:
But still there are libs, which should go into libmerged, it just does not work.
(it was not possible to add them sooner because build tools depend on
them - now we link the object files twice.)
Currently adding comphelper (you need to add tl first but that seems
to be fine) causes:

==5414== Process terminating with default action of signal 11
(SIGSEGV): dumping core
==5414==  Access not within mapped region at address 0x15DA0538
==5414==    at 0x81E3C2B: SvxAutoCorrCfg::~SvxAutoCorrCfg() (in
/home/opensuse/git/libo/solver/unxlngx6.pro/lib/libmergedlo.so)
==5414==    by 0x5D28F60: __run_exit_handlers (in /lib64/libc-2.17.so)
==5414==    by 0x5D28FE4: exit (in /lib64/libc-2.17.so)
==5414==    by 0x5D12A1B: (below main) (in /lib64/libc-2.17.so)

when executing CppunitTest_sw_uwriter - only this single unit test fails :-(
No idea what to do with that.

For any global static objects A and B ending up in libA and libB resp,, if libB (directly or indirectly) depends on LibA that enforces that the A ctor is called before the B ctor and the A dtor is called after the B dtor. But order becomes unspecified as soon as you place A and B into the same library, so I assume something of that nature causes the problem for you there. As always, global static objects are evil.

Stephan

Context


Privacy Policy | Impressum (Legal Info) | Copyright information: Unless otherwise specified, all text and images on this website are licensed under the Creative Commons Attribution-Share Alike 3.0 License. This does not include the source code of LibreOffice, which is licensed under the Mozilla Public License (MPLv2). "LibreOffice" and "The Document Foundation" are registered trademarks of their corresponding registered owners or are in actual use as trademarks in one or more countries. Their respective logos and icons are also subject to international copyright laws. Use thereof is explained in our trademark policy.