On Sun, 2012-07-22 at 11:25 +0200, Kristian Rietveld wrote: > (Please keep me on CC as I am not subscribed to the list) > > Hi all, > > I have been building LibreOffice using Clang on Mac OS X Lion again, now > that it is possible to get a working build using Clang on Linux. > > During the build, however, the "sw_filters_test" unit test crashes. The > crash happens in rtl_string_release from the FieldEntry (the one in > sw/source/file/ww8/ww8par.hxx) destructor. The FieldEntry destructor is > called through a dyld stub. > > After reading assembly code I figured that the FieldEntry destructor > being executed does not match the FieldEntry's fields. What was already > suspicious above is that rtl_string_release is being called even though > this FieldEntry uses OUStrings. > > From the assembly code I guess the FieldEntry destructor being executed > is actually the one in registry/source/reflwrit.cxx. So my impression > is that the dynamic linker on OS X is simply calling the wrong > destructor (the symbols have the same name). > > To fix this, I can think of either putting the WW8 FieldEntry in a > namespace, or renaming it to WW8FieldEntry. Since no namespaces were > used in the current code, I decided to rename the class. > > A patch is attached and I verified that it fixes the crashing unit test > for me. If people have a better or preferred way to fix this, please let > me know and I will update the patch accordingly.
Sounds like a similar problem to fdo#37044, fixed by http://cgit.freedesktop.org/libreoffice/core/commit/?id=7080d629c82422a419d38051536c7711f8abe53e I thought that got tracked down to disabled visibility or something of that nature. Anyway, doesn't hurt to disambiguate. C. _______________________________________________ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice