Bug 65882 - ordering issue on shutdown of JUnit tests
Summary: ordering issue on shutdown of JUnit tests
Status: RESOLVED FIXED
Alias: None
Product: LibreOffice
Classification: Unclassified
Component: Writer (show other bugs)
Version:
(earliest affected)
4.0.4.2 release
Hardware: Other All
: medium normal
Assignee: Not Assigned
URL:
Whiteboard: target:4.2.0 target:4.1.0.1 target:4.0.5
Keywords:
Depends on:
Blocks:
 
Reported: 2013-06-18 08:49 UTC by Michael Meeks
Modified: 2013-06-18 14:28 UTC (History)
2 users (show)

See Also:
Crash report or crash signature:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Michael Meeks 2013-06-18 08:49:37 UTC
Thread 1 (Thread 0x2aaaaac78340 (LWP 12852)):
#0  0x00002aaaab9ed295 in __GI_raise (sig=sig@entry=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:56
#1  0x00002aaaab9f0438 in __GI_abort () at abort.c:90
#2  0x00002aaaab2010c5 in __gnu_cxx::__verbose_terminate_handler() () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
#3  0x00002aaaab1ff236 in ?? () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
#4  0x00002aaaab1ff263 in std::terminate() () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
#5  0x00002aaaab1ff48e in __cxa_throw () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
#6  0x00002aaac1366034 in SwXTextDocument::setPropertyValue (this=0x7fda1a0, rPropertyName=..., aValue=...) at /home/rene/Debian/Pakete/LibreOffice/libreoffice-4.0.3/sw/source/ui/uno/unotxdoc.cxx:1833
#7  0x00002aaac11a3fd5 in XMLRedlineImportHelper::~XMLRedlineImportHelper (this=0x81485a0, __in_chrg=<optimized out>) at /home/rene/Debian/Pakete/LibreOffice/libreoffice-4.0.3/sw/source/filter/xml/XMLRedlineImportHelper.cxx:376
#8  0x00002aaac11a4169 in XMLRedlineImportHelper::~XMLRedlineImportHelper (this=0x81485a0, __in_chrg=<optimized out>) at /home/rene/Debian/Pakete/LibreOffice/libreoffice-4.0.3/sw/source/filter/xml/XMLRedlineImportHelper.cxx:391
#9  0x00002aaac11dd5ed in SwXMLTextImportHelper::~SwXMLTextImportHelper (this=0x182bad0, __in_chrg=<optimized out>) at /home/rene/Debian/Pakete/LibreOffice/libreoffice-4.0.3/sw/source/filter/xml/xmltexti.cxx:171
#10 0x00002aaac11dd609 in SwXMLTextImportHelper::~SwXMLTextImportHelper (this=0x182bad0, __in_chrg=<optimized out>) at /home/rene/Debian/Pakete/LibreOffice/libreoffice-4.0.3/sw/source/filter/xml/xmltexti.cxx:177
#11 0x00002aaac37542aa in ~UniReference (this=0x4d02668, __in_chrg=<optimized out>) at /home/rene/Debian/Pakete/LibreOffice/libreoffice-4.0.3/xmloff/inc/xmloff/uniref.hxx:131
#12 SvXMLImport::~SvXMLImport (this=0x4d025e0, __in_chrg=<optimized out>) at /home/rene/Debian/Pakete/LibreOffice/libreoffice-4.0.3/xmloff/source/core/xmlimp.cxx:480
#13 0x00002aaac11bdd19 in SwXMLImport::~SwXMLImport (this=0x4d025e0, __in_chrg=<optimized out>) at /home/rene/Debian/Pakete/LibreOffice/libreoffice-4.0.3/sw/source/filter/xml/xmlimp.cxx:448
#14 0x00002aaac85c352c in ~Reference (this=0x4511930, __in_chrg=<optimized out>) at /home/rene/Debian/Pakete/LibreOffice/libreoffice-4.0.3/solver/unxlngx6.pro/inc/com/sun/star/uno/Reference.hxx:108
#15 XMLTransformerBase::~XMLTransformerBase (this=0x45118e0, __in_chrg=<optimized out>) at /home/rene/Debian/Pakete/LibreOffice/libreoffice-4.0.3/xmloff/source/transform/TransformerBase.cxx:204
#16 0x00002aaac85af6c9 in OOo2OasisTransformer::~OOo2OasisTransformer (this=0x45118e0, __in_chrg=<optimized out>) at /home/rene/Debian/Pakete/LibreOffice/libreoffice-4.0.3/xmloff/source/transform/OOo2Oasis.cxx:1877
#17 0x00002aaaba746d48 in bridges::cpp_uno::shared::freeUnoInterfaceProxy (pEnv=<optimized out>, pProxy=0x812ce60) at /home/rene/Debian/Pakete/LibreOffice/libreoffice-4.0.3/bridges/source/cpp_uno/shared/unointerfaceproxy.cxx:43
#18 0x00002aaaac53b58a in (anonymous namespace)::s_stub_defenv_revokeInterface (pParam=<optimized out>) at /home/rene/Debian/Pakete/LibreOffice/libreoffice-4.0.3/cppu/source/uno/lbenv.cxx:391
#19 0x00002aaaac538f76 in s_environment_invoke_v (pCurrEnv=0x0, pTargetEnv=<optimized out>, pCallee=0x2aaaac53b1f0 <(anonymous namespace)::s_stub_defenv_revokeInterface(va_list*)>, pParam=pParam@entry=0x7fff37138148) at /home/rene/Debian/Pakete/LibreOffice/libreoffice-4.0.3/cppu/source/uno/EnvStack.cxx:287
#20 0x00002aaaac5392b7 in uno_Environment_invoke_v (pTargetEnv=<optimized out>, pCallee=<optimized out>, pParam=pParam@entry=0x7fff37138148) at /home/rene/Debian/Pakete/LibreOffice/libreoffice-4.0.3/cppu/source/uno/EnvStack.cxx:306
#21 0x00002aaaac539347 in uno_Environment_invoke (pEnv=<optimized out>, pCallee=<optimized out>) at /home/rene/Debian/Pakete/LibreOffice/libreoffice-4.0.3/cppu/source/uno/EnvStack.cxx:315
#22 0x00002aaabca4e01a in ~UnoInterfaceReference (this=0x4d05cd8, __in_chrg=<optimized out>) at /home/rene/Debian/Pakete/LibreOffice/libreoffice-4.0.3/solver/unxlngx6.pro/inc/uno/dispatcher.hxx:88
#23 ~SubStub (this=0x4d05cd8, __in_chrg=<optimized out>) at /home/rene/Debian/Pakete/LibreOffice/libreoffice-4.0.3/binaryurp/source/bridge.cxx:167
#24 ~pair (this=0x4d05cd0, __in_chrg=<optimized out>) at /usr/include/c++/4.8/bits/stl_pair.h:96
#25 ~_Rb_tree_node (this=0x4d05cb0, __in_chrg=<optimized out>) at /usr/include/c++/4.8/bits/stl_tree.h:131
#26 destroy<std::_Rb_tree_node<std::pair<com::sun::star::uno::TypeDescription const, binaryurp::Bridge::SubStub> > > (this=<optimized out>, __p=0x4d05cb0) at /usr/include/c++/4.8/ext/new_allocator.h:124
#27 _M_destroy_node (this=0x4d02308, __p=0x4d05cb0) at /usr/include/c++/4.8/bits/stl_tree.h:421
#28 std::_Rb_tree<com::sun::star::uno::TypeDescription, std::pair<com::sun::star::uno::TypeDescription const, binaryurp::Bridge::SubStub>, std::_Select1st<std::pair<com::sun::star::uno::TypeDescription const, binaryurp::Bridge::SubStub> >, std::less<com::sun::star::uno::TypeDescription>, std::allocator<std::pair<com::sun::star::uno::TypeDescription const, binaryurp::Bridge::SubStub> > >::_M_erase (this=this@entry=0x4d02308, __x=0x4d05cb0) at /usr/include/c++/4.8/bits/stl_tree.h:1124
#29 0x00002aaabca4e078 in ~_Rb_tree (this=0x4d02308, __in_chrg=<optimized out>) at /usr/include/c++/4.8/bits/stl_tree.h:671
#30 ~map (this=0x4d02308, __in_chrg=<optimized out>) at /usr/include/c++/4.8/bits/stl_map.h:96
#31 ~pair (this=0x4d02300, __in_chrg=<optimized out>) at /usr/include/c++/4.8/bits/stl_pair.h:96
#32 ~_Rb_tree_node (this=0x4d022e0, __in_chrg=<optimized out>) at /usr/include/c++/4.8/bits/stl_tree.h:131
#33 destroy<std::_Rb_tree_node<std::pair<rtl::OUString const, std::map<com::sun::star::uno::TypeDescription, binaryurp::Bridge::SubStub> > > > (this=<optimized out>, __p=0x4d022e0) at /usr/include/c++/4.8/ext/new_allocator.h:124
#34 _M_destroy_node (this=0x7fff37138360, __p=0x4d022e0) at /usr/include/c++/4.8/bits/stl_tree.h:421
#35 std::_Rb_tree<rtl::OUString, std::pair<rtl::OUString const, std::map<com::sun::star::uno::TypeDescription, binaryurp::Bridge::SubStub, std::less<com::sun::star::uno::TypeDescription>, std::allocator<std::pair<com::sun::star::uno::TypeDescription const, binaryurp::Bridge::SubStub> > > >, std::_Select1st<std::pair<rtl::OUString const, std::map<com::sun::star::uno::TypeDescription, binaryurp::Bridge::SubStub, std::less<com::sun::star::uno::TypeDescription>, std::allocator<std::pair<com::sun::star::uno::TypeDescription const, binaryurp::Bridge::SubStub> > > > >, std::less<rtl::OUString>, std::allocator<std::pair<rtl::OUString const, std::map<com::sun::star::uno::TypeDescription, binaryurp::Bridge::SubStub, std::less<com::sun::star::uno::TypeDescription>, std::allocator<std::pair<com::sun::star::uno::TypeDescription const, binaryurp::Bridge::SubStub> > > > > >::_M_erase (this=this@entry=0x7fff37138360, __x=0x4d022e0) at /usr/include/c++/4.8/bits/stl_tree.h:1124
#36 0x00002aaabca4e067 in std::_Rb_tree<rtl::OUString, std::pair<rtl::OUString const, std::map<com::sun::star::uno::TypeDescription, binaryurp::Bridge::SubStub, std::less<com::sun::star::uno::TypeDescription>, std::allocator<std::pair<com::sun::star::uno::TypeDescription const, binaryurp::Bridge::SubStub> > > >, std::_Select1st<std::pair<rtl::OUString const, std::map<com::sun::star::uno::TypeDescription, binaryurp::Bridge::SubStub, std::less<com::sun::star::uno::TypeDescription>, std::allocator<std::pair<com::sun::star::uno::TypeDescription const, binaryurp::Bridge::SubStub> > > > >, std::less<rtl::OUString>, std::allocator<std::pair<rtl::OUString const, std::map<com::sun::star::uno::TypeDescription, binaryurp::Bridge::SubStub, std::less<com::sun::star::uno::TypeDescription>, std::allocator<std::pair<com::sun::star::uno::TypeDescription const, binaryurp::Bridge::SubStub> > > > > >::_M_erase (this=this@entry=0x7fff37138360, __x=0x558bdc0) at /usr/include/c++/4.8/bits/stl_tree.h:1122
#37 0x00002aaabca4e067 in std::_Rb_tree<rtl::OUString, std::pair<rtl::OUString const, std::map<com::sun::star::uno::TypeDescription, binaryurp::Bridge::SubStub, std::less<com::sun::star::uno::TypeDescription>, std::allocator<std::pair<com::sun::star::uno::TypeDescription const, binaryurp::Bridge::SubStub> > > >, std::_Select1st<std::pair<rtl::OUString const, std::map<com::sun::star::uno::TypeDescription, binaryurp::Bridge::SubStub, std::less<com::sun::star::uno::TypeDescription>, std::allocator<std::pair<com::sun::star::uno::TypeDescription const, binaryurp::Bridge::SubStub> > > > >, std::less<rtl::OUString>, std::allocator<std::pair<rtl::OUString const, std::map<com::sun::star::uno::TypeDescription, binaryurp::Bridge::SubStub, std::less<com::sun::star::uno::TypeDescription>, std::allocator<std::pair<com::sun::star::uno::TypeDescription const, binaryurp::Bridge::SubStub> > > > > >::_M_erase (this=this@entry=0x7fff37138360, __x=0x2d57b60) at /usr/include/c++/4.8/bits/stl_tree.h:1122
#38 0x00002aaabca4e067 in std::_Rb_tree<rtl::OUString, std::pair<rtl::OUString const, std::map<com::sun::star::uno::TypeDescription, binaryurp::Bridge::SubStub, std::less<com::sun::star::uno::TypeDescription>, std::allocator<std::pair<com::sun::star::uno::TypeDescription const, binaryurp::Bridge::SubStub> > > >, std::_Select1st<std::pair<rtl::OUString const, std::map<com::sun::star::uno::TypeDescription, binaryurp::Bridge::SubStub, std::less<com::sun::star::uno::TypeDescription>, std::allocator<std::pair<com::sun::star::uno::TypeDescription const, binaryurp::Bridge::SubStub> > > > >, std::less<rtl::OUString>, std::allocator<std::pair<rtl::OUString const, std::map<com::sun::star::uno::TypeDescription, binaryurp::Bridge::SubStub, std::less<com::sun::star::uno::TypeDescription>, std::allocator<std::pair<com::sun::star::uno::TypeDescription const, binaryurp::Bridge::SubStub> > > > > >::_M_erase (this=this@entry=0x7fff37138360, __x=0x3c7f040) at /usr/include/c++/4.8/bits/stl_tree.h:1122
#39 0x00002aaabca4e067 in std::_Rb_tree<rtl::OUString, std::pair<rtl::OUString const, std::map<com::sun::star::uno::TypeDescription, binaryurp::Bridge::SubStub, std::less<com::sun::star::uno::TypeDescription>, std::allocator<std::pair<com::sun::star::uno::TypeDescription const, binaryurp::Bridge::SubStub> > > >, std::_Select1st<std::pair<rtl::OUString const, std::map<com::sun::star::uno::TypeDescription, binaryurp::Bridge::SubStub, std::less<com::sun::star::uno::TypeDescription>, std::allocator<std::pair<com::sun::star::uno::TypeDescription const, binaryurp::Bridge::SubStub> > > > >, std::less<rtl::OUString>, std::allocator<std::pair<rtl::OUString const, std::map<com::sun::star::uno::TypeDescription, binaryurp::Bridge::SubStub, std::less<com::sun::star::uno::TypeDescription>, std::allocator<std::pair<com::sun::star::uno::TypeDescription const, binaryurp::Bridge::SubStub> > > > > >::_M_erase (this=this@entry=0x7fff37138360, __x=0x335fc90) at /usr/include/c++/4.8/bits/stl_tree.h:1122
#40 0x00002aaabca4e067 in std::_Rb_tree<rtl::OUString, std::pair<rtl::OUString const, std::map<com::sun::star::uno::TypeDescription, binaryurp::Bridge::SubStub, std::less<com::sun::star::uno::TypeDescription>, std::allocator<std::pair<com::sun::star::uno::TypeDescription const, binaryurp::Bridge::SubStub> > > >, std::_Select1st<std::pair<rtl::OUString const, std::map<com::sun::star::uno::TypeDescription, binaryurp::Bridge::SubStub, std::less<com::sun::star::uno::TypeDescription>, std::allocator<std::pair<com::sun::star::uno::TypeDescription const, binaryurp::Bridge::SubStub> > > > >, std::less<rtl::OUString>, std::allocator<std::pair<rtl::OUString const, std::map<com::sun::star::uno::TypeDescription, binaryurp::Bridge::SubStub, std::less<com::sun::star::uno::TypeDescription>, std::allocator<std::pair<com::sun::star::uno::TypeDescription const, binaryurp::Bridge::SubStub> > > > > >::_M_erase (this=this@entry=0x7fff37138360, __x=0x2bbd900) at /usr/include/c++/4.8/bits/stl_tree.h:1122
#41 0x00002aaabca490f1 in ~_Rb_tree (this=0x7fff37138360, __in_chrg=<optimized out>) at /usr/include/c++/4.8/bits/stl_tree.h:671
#42 ~map (this=0x7fff37138360, __in_chrg=<optimized out>) at /usr/include/c++/4.8/bits/stl_map.h:96
#43 binaryurp::Bridge::terminate (this=this@entry=0x16c7a80, final=final@entry=true) at /home/rene/Debian/Pakete/LibreOffice/libreoffice-4.0.3/binaryurp/source/bridge.cxx:332
#44 0x00002aaabca4969e in binaryurp::Bridge::dispose (this=0x16c7a80) at /home/rene/Debian/Pakete/LibreOffice/libreoffice-4.0.3/binaryurp/source/bridge.cxx:920
#45 0x00002aaabc6285ef in desktop::Acceptor::~Acceptor (this=0x154f520, __in_chrg=<optimized out>) at /home/rene/Debian/Pakete/LibreOffice/libreoffice-4.0.3/desktop/source/offacc/acceptor.cxx:80
#46 0x00002aaabc6288a9 in desktop::Acceptor::~Acceptor (this=0x154f520, __in_chrg=<optimized out>) at /home/rene/Debian/Pakete/LibreOffice/libreoffice-4.0.3/desktop/source/offacc/acceptor.cxx:82
#47 0x00002aaaaaf5701a in ~Reference (this=0x1546ab8, __in_chrg=<optimized out>) at /home/rene/Debian/Pakete/LibreOffice/libreoffice-4.0.3/solver/unxlngx6.pro/inc/com/sun/star/uno/Reference.hxx:108
#48 ~pair (this=0x1546ab0, __in_chrg=<optimized out>) at /usr/include/c++/4.8/bits/stl_pair.h:96
#49 ~_Rb_tree_node (this=0x1546a90, __in_chrg=<optimized out>) at /usr/include/c++/4.8/bits/stl_tree.h:131
#50 destroy<std::_Rb_tree_node<std::pair<rtl::OUString const, com::sun::star::uno::Reference<com::sun::star::lang::XInitialization> > > > (this=<optimized out>, __p=0x1546a90) at /usr/include/c++/4.8/ext/new_allocator.h:124
#51 _M_destroy_node (this=0x2aaaab19b3c0 <rtl::Static<desktop::AcceptorMap, desktop::(anonymous namespace)::acceptorMap>::get()::instance>, __p=0x1546a90) at /usr/include/c++/4.8/bits/stl_tree.h:421
#52 std::_Rb_tree<rtl::OUString, std::pair<rtl::OUString const, com::sun::star::uno::Reference<com::sun::star::lang::XInitialization> >, std::_Select1st<std::pair<rtl::OUString const, com::sun::star::uno::Reference<com::sun::star::lang::XInitialization> > >, std::less<rtl::OUString>, std::allocator<std::pair<rtl::OUString const, com::sun::star::uno::Reference<com::sun::star::lang::XInitialization> > > >::_M_erase (this=this@entry=0x2aaaab19b3c0 <rtl::Static<desktop::AcceptorMap, desktop::(anonymous namespace)::acceptorMap>::get()::instance>, __x=0x1546a90) at /usr/include/c++/4.8/bits/stl_tree.h:1124
#53 0x00002aaaaaf554b0 in clear (this=0x2aaaab19b3c0 <rtl::Static<desktop::AcceptorMap, desktop::(anonymous namespace)::acceptorMap>::get()::instance>) at /usr/include/c++/4.8/bits/stl_tree.h:857
#54 clear (this=<optimized out>) at /usr/include/c++/4.8/bits/stl_map.h:788
#55 desktop::Desktop::DeregisterServices (this=this@entry=0x7fff37138960) at /home/rene/Debian/Pakete/LibreOffice/libreoffice-4.0.3/desktop/source/app/appinit.cxx:256
#56 0x00002aaaaaf44369 in desktop::Desktop::doShutdown (this=this@entry=0x7fff37138960) at /home/rene/Debian/Pakete/LibreOffice/libreoffice-4.0.3/desktop/source/app/app.cxx:1713
#57 0x00002aaaaaf47d7f in desktop::Desktop::Main (this=0x7fff37138960) at /home/rene/Debian/Pakete/LibreOffice/libreoffice-4.0.3/desktop/source/app/app.cxx:1680
#58 0x00002aaaaef49b81 in ImplSVMain () at /home/rene/Debian/Pakete/LibreOffice/libreoffice-4.0.3/vcl/source/app/svmain.cxx:162
#59 0x00002aaaaef49c05 in SVMain () at /home/rene/Debian/Pakete/LibreOffice/libreoffice-4.0.3/vcl/source/app/svmain.cxx:199
#60 0x00002aaaaaf7359d in soffice_main () at /home/rene/Debian/Pakete/LibreOffice/libreoffice-4.0.3/desktop/source/app/sofficemain.cxx:74
#61 0x000000000040073b in sal_main () at /home/rene/Debian/Pakete/LibreOffice/libreoffice-4.0.3/desktop/source/app/main.c:48
#62 main (argc=<optimized out>, argv=<optimized out>) at /home/rene/Debian/Pakete/LibreOffice/libreoffice-4.0.3/desktop/source/app/main.c:47

E
Time: 268,178
There was 1 failure:
1) test(org.openoffice.test.UnoApiTest)
org.openoffice.test.OfficeConnection$PostprocessFailedException: This likely means that soffice crashed during the test.

FAILURES!!!
Tests run: 1,  Failures: 1

to rerun just this failed test without all others, run:

    make /home/rene/Debian/Pakete/LibreOffice/libreoffice-4.0.3/workdir/unxlngx6.pro/JunitTest/sw_unoapi/done
Comment 1 Michael Meeks 2013-06-18 08:51:30 UTC
<mmeeks> sberg: _rene_'s AMD64 bug looks like a random ordering artefact
<mmeeks> sberg: as we shutdown the remote UNO acceptor it -looks- (to me) as if we iterate over the map of live references and just unref them - is that so ?
<mmeeks> sberg: [ and if so, I guess changes in the order of that map may randomly affect behaviour ? ]
<sberg> mmeeks, yes, when we dispose a bridge we call release on all the local objects still bridged out over that bridge (which e.g. happens when the remote end is Java and hasn't yet GC'ed the proxy)
<sberg> mmeeks, but that itself should not cause any problems
<mmeeks> sberg: well - some objects have to be destroyed in a certain order.
<mmeeks> sberg: if you see that trace, the Redline import thing must be destroyed before the Document that it is working on
<mmeeks> otherwise exceptions get fired.
<sberg> mmeeks, some objects need to be destroyed in a certain order for sure; but note that calling release on an object does not necessarily destroy it
<mmeeks> which seems to be the cause of the test failures Rene is seeing - I guess some difference in the JavaVM around garbage collection timing, and/or some change in order in the map.
<mmeeks> true;
<mmeeks> so in fact I mean that SwXDocument must be 'Invalidate'd in the right order vs. the destroy of the redline reference.
<mmeeks> sberg: advice appreciated, we could a) just ignore such exceptions during the filter shutdown
<mmeeks> sberg: or b) tweak the Java code to try to explicitly free / unref the remote reference [ is that even possible ]
<mmeeks> sberg: c) another other option ;-)
<sberg> mmeeks, the root problem is probably that ~XMLRedlineImprotHelper wants to do some activity, and assumes that it is called at a specific time
<sberg> mmeeks, (this has historically been a source of lots of trouble, dtors of UNO objects doing stuff and then being called at unpredictable times from Java GC; most such problems should be solved by now)
<sberg> mmeeks, so I guess what's immediately needed here is that ~XMLRedlineImportHelper cope with its SwXTextDocument already being invalidated (i.e., catch the relevant exceptions)
<mmeeks> sberg: fair cop - will add some magic there, and OSL_WARN if it fires tec.
Comment 2 Commit Notification 2013-06-18 09:07:30 UTC
Michael Meeks committed a patch related to this issue.
It has been pushed to "master":

http://cgit.freedesktop.org/libreoffice/core/commit/?id=b9155a663b767695c5d636e855765c209944cfd5

fdo#65882 - fix intermittent writer unit test failure on exit.



The patch should be included in the daily builds available at
http://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More
information about daily builds can be found at:
http://wiki.documentfoundation.org/Testing_Daily_Builds
Affected users are encouraged to test the fix and report feedback.
Comment 3 Commit Notification 2013-06-18 09:17:18 UTC
Michael Meeks committed a patch related to this issue.
It has been pushed to "libreoffice-4-1":

http://cgit.freedesktop.org/libreoffice/core/commit/?id=23ff4ca909f960a7fb36ac87791d448a2ed5eb6d&h=libreoffice-4-1

fdo#65882 - fix intermittent writer unit test failure on exit.


It will be available in LibreOffice 4.1.

The patch should be included in the daily builds available at
http://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More
information about daily builds can be found at:
http://wiki.documentfoundation.org/Testing_Daily_Builds
Affected users are encouraged to test the fix and report feedback.
Comment 4 Michael Meeks 2013-06-18 10:12:28 UTC
pushed variously; review appreciated in gerrit for -4-0:

https://gerrit.libreoffice.org/4336
Comment 5 Commit Notification 2013-06-18 14:28:55 UTC
Michael Meeks committed a patch related to this issue.
It has been pushed to "libreoffice-4-0":

http://cgit.freedesktop.org/libreoffice/core/commit/?id=49c783437f37b52f1feeb415d1fc9274b185a488&h=libreoffice-4-0

fdo#65882 - fix intermittent writer unit test failure on exit.


It will be available in LibreOffice 4.0.5.

The patch should be included in the daily builds available at
http://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More
information about daily builds can be found at:
http://wiki.documentfoundation.org/Testing_Daily_Builds
Affected users are encouraged to test the fix and report feedback.