OSX uiwriter stacktrace needed

classic Classic list List threaded Threaded
11 messages Options
Bjoern Michaelsen Bjoern Michaelsen
Reply | Threaded
Open this post in threaded view
|

OSX uiwriter stacktrace needed

Hi,

so before pushing the unocrsrptr branch, I tried to use our CI:

 https://gerrit.libreoffice.org/#/c/16179/

however it turned out the uiwriter unittest was unstable when basing on it
today: I had crashes on Linux too, but to make it more fun not under gdb. With
no way to verify my changes any further I pushed the branch.

However, OSX seems to be reliably broken now according to the tinderboxes.
If someone manages to provide a backtrace, I would appreciate that, so I can
investigate what broke and fix it.

Best,

Bjoern
_______________________________________________
LibreOffice mailing list
[hidden email]
http://lists.freedesktop.org/mailman/listinfo/libreoffice
Miklos Vajna-4 Miklos Vajna-4
Reply | Threaded
Open this post in threaded view
|

Re: OSX uiwriter stacktrace needed

On Tue, Jun 09, 2015 at 02:54:06PM +0200, Bjoern Michaelsen <[hidden email]> wrote:
> so before pushing the unocrsrptr branch, I tried to use our CI:
>
>  https://gerrit.libreoffice.org/#/c/16179/
>
> however it turned out the uiwriter unittest was unstable when basing on it
> today: I had crashes on Linux too, but to make it more fun not under gdb. With
> no way to verify my changes any further I pushed the branch.

Hopefully
<http://cgit.freedesktop.org/libreoffice/core/commit/?id=eacbead4f5a4dc7c8db3d60c948e28c199aa2b10>
fixes that.

_______________________________________________
LibreOffice mailing list
[hidden email]
http://lists.freedesktop.org/mailman/listinfo/libreoffice

signature.asc (188 bytes) Download Attachment
sberg sberg
Reply | Threaded
Open this post in threaded view
|

Re: OSX uiwriter stacktrace needed

In reply to this post by Bjoern Michaelsen
...

> ==15622==ERROR: AddressSanitizer: heap-use-after-free on address 0x604000629690 at pc 0x2b4bec6e1e2f bp 0x7fff96f22930 sp 0x7fff96f22928
> READ of size 8 at 0x604000629690 thread T0
>     #0 0x2b4bec6e1e2e in BigPtrEntry::GetArray() const sw/inc/bparr.hxx:103:21
>     #1 0x2b4bec6e17d6 in SwNode::GetNodes() sw/inc/node.hxx:703:34
>     #2 0x2b4bec6a526d in SwNodeIndex::~SwNodeIndex() sw/inc/ndindex.hxx:83:28
>     #3 0x2b4bec69eb0a in SwUiWriterTest::testUnoCursorPointer() sw/qa/extras/uiwriter/uiwriter.cxx:1045:1
>     #4 0x2b4bec787d4f in CppUnit::TestCaller<SwUiWriterTest>::runTest() workdir/UnpackedTarball/cppunit/include/cppunit/TestCaller.h:166:6
>     #5 0x2b4bae30775d in CppUnit::TestCaseMethodFunctor::operator()() const workdir/UnpackedTarball/cppunit/src/cppunit/TestCase.cpp:32:5
>     #6 0x2b4bc6319816 in (anonymous namespace)::Protector::protect(CppUnit::Functor const&, CppUnit::ProtectorContext const&) test/source/vclbootstrapprotector.cxx:57:14
>     #7 0x2b4bae2c34b7 in CppUnit::ProtectorChain::ProtectFunctor::operator()() const workdir/UnpackedTarball/cppunit/src/cppunit/ProtectorChain.cpp:20:12
>     #8 0x2b4bbd74e126 in (anonymous namespace)::Prot::protect(CppUnit::Functor const&, CppUnit::ProtectorContext const&) unotest/source/cpp/unobootstrapprotector/unobootstrapprotector.cxx:88:12
>     #9 0x2b4bae2c34b7 in CppUnit::ProtectorChain::ProtectFunctor::operator()() const workdir/UnpackedTarball/cppunit/src/cppunit/ProtectorChain.cpp:20:12
>     #10 0x2b4bb9ad5e54 in (anonymous namespace)::Prot::protect(CppUnit::Functor const&, CppUnit::ProtectorContext const&) unotest/source/cpp/unoexceptionprotector/unoexceptionprotector.cxx:63:16
>     #11 0x2b4bae2c34b7 in CppUnit::ProtectorChain::ProtectFunctor::operator()() const workdir/UnpackedTarball/cppunit/src/cppunit/ProtectorChain.cpp:20:12
>     #12 0x2b4bae24c70c in CppUnit::DefaultProtector::protect(CppUnit::Functor const&, CppUnit::ProtectorContext const&) workdir/UnpackedTarball/cppunit/src/cppunit/DefaultProtector.cpp:15:12
>     #13 0x2b4bae2c34b7 in CppUnit::ProtectorChain::ProtectFunctor::operator()() const workdir/UnpackedTarball/cppunit/src/cppunit/ProtectorChain.cpp:20:12
>     #14 0x2b4bae2bf475 in CppUnit::ProtectorChain::protect(CppUnit::Functor const&, CppUnit::ProtectorContext const&) workdir/UnpackedTarball/cppunit/src/cppunit/ProtectorChain.cpp:77:18
>     #15 0x2b4bae387ed5 in CppUnit::TestResult::protect(CppUnit::Functor const&, CppUnit::Test*, std::string const&) workdir/UnpackedTarball/cppunit/src/cppunit/TestResult.cpp:181:10
>     #16 0x2b4bae3042b6 in CppUnit::TestCase::run(CppUnit::TestResult*) workdir/UnpackedTarball/cppunit/src/cppunit/TestCase.cpp:91:5
>     #17 0x2b4bae30acf3 in CppUnit::TestComposite::doRunChildTests(CppUnit::TestResult*) workdir/UnpackedTarball/cppunit/src/cppunit/TestComposite.cpp:64:5
>     #18 0x2b4bae309c5d in CppUnit::TestComposite::run(CppUnit::TestResult*) workdir/UnpackedTarball/cppunit/src/cppunit/TestComposite.cpp:23:3
>     #19 0x2b4bae30acf3 in CppUnit::TestComposite::doRunChildTests(CppUnit::TestResult*) workdir/UnpackedTarball/cppunit/src/cppunit/TestComposite.cpp:64:5
>     #20 0x2b4bae309c5d in CppUnit::TestComposite::run(CppUnit::TestResult*) workdir/UnpackedTarball/cppunit/src/cppunit/TestComposite.cpp:23:3
>     #21 0x2b4bae3c6ad6 in CppUnit::TestRunner::WrappingSuite::run(CppUnit::TestResult*) workdir/UnpackedTarball/cppunit/src/cppunit/TestRunner.cpp:47:5
>     #22 0x2b4bae385d59 in CppUnit::TestResult::runTest(CppUnit::Test*) workdir/UnpackedTarball/cppunit/src/cppunit/TestResult.cpp:148:3
>     #23 0x2b4bae3c8096 in CppUnit::TestRunner::run(CppUnit::TestResult&, std::string const&) workdir/UnpackedTarball/cppunit/src/cppunit/TestRunner.cpp:96:3
>     #24 0x4ff258 in (anonymous namespace)::ProtectedFixtureFunctor::run() const sal/cppunittester/cppunittester.cxx:276:13
>     #25 0x4fa0dd in sal_main() sal/cppunittester/cppunittester.cxx:379:14
>     #26 0x4f8312 in main sal/cppunittester/cppunittester.cxx:297:1
>     #27 0x2b4baff05fdf in __libc_start_main (/lib64/libc.so.6+0x1ffdf)
>     #28 0x42e604 in _start (workdir/LinkTarget/Executable/cppunittester+0x42e604)
>
> 0x604000629690 is located 0 bytes inside of 40-byte region [0x604000629690,0x6040006296b8)
> freed by thread T0 here:
>     #0 0x4f6170 in operator delete(void*) /home/sbergman/clang/trunk/src/projects/compiler-rt/lib/asan/asan_new_delete.cc:94
>     #1 0x2b4c0ecffa18 in BigPtrArray::~BigPtrArray() sw/source/core/bastyp/bparr.cxx:64:13
>     #2 0x2b4c10cd0b68 in SwNodes::~SwNodes() sw/source/core/docnode/nodes.cxx:115:1
>     #3 0x2b4c0fc6dd6f in void boost::checked_delete<SwNodes>(SwNodes*) workdir/UnpackedTarball/boost/boost/checked_delete.hpp:34:5
>     #4 0x2b4c0fc1ffe0 in boost::scoped_ptr<SwNodes>::~scoped_ptr() workdir/UnpackedTarball/boost/boost/smart_ptr/scoped_ptr.hpp:87:9
>     #5 0x2b4c0fbe8d02 in SwDoc::~SwDoc() sw/source/core/doc/docnew.cxx:593:1
>     #6 0x2b4c0fbeaaff in SwDoc::~SwDoc() sw/source/core/doc/docnew.cxx:385:1
>     #7 0x2b4c15bd9890 in SwDocShell::RemoveLink() sw/source/uibase/app/docshini.cxx:466:13
>     #8 0x2b4c15bd7276 in SwDocShell::~SwDocShell() sw/source/uibase/app/docshini.cxx:388:5
>     #9 0x2b4c15bd9c26 in SwDocShell::~SwDocShell() sw/source/uibase/app/docshini.cxx:378:1
>     #10 0x2b4c15bda05f in SwDocShell::~SwDocShell() sw/source/uibase/app/docshini.cxx:378:1
>     #11 0x2b4c15bda1a6 in virtual thunk to SwDocShell::~SwDocShell() sw/source/uibase/app/docshini.cxx:377:13
>     #12 0x2b4bf2203a77 in SvRefBase::ReleaseRef() include/tools/ref.hxx:196:29
>     #13 0x2b4bf21f5628 in tools::SvRef<SfxObjectShell>::~SvRef() include/tools/ref.hxx:52:24
>     #14 0x2b4bf43c255e in IMPL_SfxBaseModel_DataContainer::~IMPL_SfxBaseModel_DataContainer() sfx2/source/doc/sfxbasemodel.cxx:247:5
>     #15 0x2b4bf43c276f in IMPL_SfxBaseModel_DataContainer::~IMPL_SfxBaseModel_DataContainer() sfx2/source/doc/sfxbasemodel.cxx:246:5
>     #16 0x2b4bf42ac396 in SfxBaseModel::dispose() sfx2/source/doc/sfxbasemodel.cxx:795:5
>     #17 0x2b4c1733b561 in SwXTextDocument::dispose() sw/source/uibase/uno/unotxdoc.cxx:588:5
>     #18 0x2b4c1733b5db in non-virtual thunk to SwXTextDocument::dispose() sw/source/uibase/uno/unotxdoc.cxx:586:23
>     #19 0x2b4bf42d1a1c in SfxBaseModel::close(unsigned char) sfx2/source/doc/sfxbasemodel.cxx:1418:5
>     #20 0x2b4c1733beda in SwXTextDocument::close(unsigned char) sw/source/uibase/uno/unotxdoc.cxx:596:5
>     #21 0x2b4c1733c295 in non-virtual thunk to SwXTextDocument::close(unsigned char) sw/source/uibase/uno/unotxdoc.cxx:591:23
>     #22 0x2b4bf42a8f03 in SfxBaseModel::dispose() sfx2/source/doc/sfxbasemodel.cxx:754:13
>     #23 0x2b4c1733b561 in SwXTextDocument::dispose() sw/source/uibase/uno/unotxdoc.cxx:588:5
>     #24 0x2b4c1733b5b8 in non-virtual thunk to SwXTextDocument::dispose() sw/source/uibase/uno/unotxdoc.cxx:586:23
>     #25 0x2b4bec69de41 in SwUiWriterTest::testUnoCursorPointer() sw/qa/extras/uiwriter/uiwriter.cxx:1043:5
>     #26 0x2b4bec787d4f in CppUnit::TestCaller<SwUiWriterTest>::runTest() workdir/UnpackedTarball/cppunit/include/cppunit/TestCaller.h:166:6
>     #27 0x2b4bae30775d in CppUnit::TestCaseMethodFunctor::operator()() const workdir/UnpackedTarball/cppunit/src/cppunit/TestCase.cpp:32:5
>     #28 0x2b4bc6319816 in (anonymous namespace)::Protector::protect(CppUnit::Functor const&, CppUnit::ProtectorContext const&) test/source/vclbootstrapprotector.cxx:57:14
>     #29 0x2b4bae2c34b7 in CppUnit::ProtectorChain::ProtectFunctor::operator()() const workdir/UnpackedTarball/cppunit/src/cppunit/ProtectorChain.cpp:20:12
>
> previously allocated by thread T0 here:
>     #0 0x4f5b70 in operator new(unsigned long) /home/sbergman/clang/trunk/src/projects/compiler-rt/lib/asan/asan_new_delete.cc:62
>     #1 0x2b4c0ed0a127 in BigPtrArray::InsBlock(unsigned short) sw/source/core/bastyp/bparr.cxx:176:20
>     #2 0x2b4c0ed02148 in BigPtrArray::Insert(BigPtrEntry* const&, unsigned long) sw/source/core/bastyp/bparr.cxx:215:13
>     #3 0x2b4c10d2ece4 in SwNodes::InsertNode(SwNode*, unsigned long) sw/source/core/docnode/nodes.cxx:2319:5
>     #4 0x2b4c10c6f802 in SwStartNode::SwStartNode(SwNodes&, unsigned long) sw/source/core/docnode/node.cxx:899:9
>     #5 0x2b4c10cce59c in SwNodes::SwNodes(SwDoc*) sw/source/core/docnode/nodes.cxx:69:31
>     #6 0x2b4c0fbc5aeb in SwDoc::SwDoc() sw/source/core/doc/docnew.cxx:204:21
>     #7 0x2b4c14cf0e41 in SwDocFac::GetDoc() sw/source/filter/basflt/docfact.cxx:46:20
>     #8 0x2b4c15bc8939 in SwDocShell::AddLink() sw/source/uibase/app/docshini.cxx:417:18
>     #9 0x2b4c15bdd2b5 in SwDocShell::Load(SfxMedium&) sw/source/uibase/app/docshini.cxx:493:9
>     #10 0x2b4bf40730de in SfxObjectShell::LoadOwnFormat(SfxMedium&) sfx2/source/doc/objstor.cxx:3067:20
>     #11 0x2b4bf407b66e in SfxObjectShell::DoLoad(SfxMedium*) sfx2/source/doc/objstor.cxx:724:40
>     #12 0x2b4bf4305b53 in SfxBaseModel::load(com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&) sfx2/source/doc/sfxbasemodel.cxx:1859:11
>     #13 0x2b4bf430e6ce in non-virtual thunk to SfxBaseModel::load(com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&) sfx2/source/doc/sfxbasemodel.cxx:1810:29
>     #14 0x2b4bf4b37537 in (anonymous namespace)::SfxFrameLoader_Impl::load(com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&, com::sun::star::uno::Reference<com::sun::star::frame::XFrame> const&) sfx2/source/view/frmload.cxx:703:17
>     #15 0x2b4bf4b3a723 in non-virtual thunk to (anonymous namespace)::SfxFrameLoader_Impl::load(com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&, com::sun::star::uno::Reference<com::sun::star::frame::XFrame> const&) sfx2/source/view/frmload.cxx:615:40
>     #16 0x2b4c4f52db08 in framework::LoadEnv::impl_loadContent() framework/source/loadenv/loadenv.cxx:1122:24
>     #17 0x2b4c4f51287a in framework::LoadEnv::startLoading() framework/source/loadenv/loadenv.cxx:383:20
>     #18 0x2b4c4f50a8f3 in framework::LoadEnv::loadComponentFromURL(com::sun::star::uno::Reference<com::sun::star::frame::XComponentLoader> const&, com::sun::star::uno::Reference<com::sun::star::uno::XComponentContext> const&, rtl::OUString const&, rtl::OUString const&, int, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&) framework/source/loadenv/loadenv.cxx:164:9
>     #19 0x2b4c4f70d7f4 in framework::Desktop::loadComponentFromURL(rtl::OUString const&, rtl::OUString const&, int, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&) framework/source/services/desktop.cxx:566:12
>     #20 0x2b4c4f70daea in non-virtual thunk to framework::Desktop::loadComponentFromURL(rtl::OUString const&, rtl::OUString const&, int, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&) framework/source/services/desktop.cxx:552:64
>     #21 0x2b4c1fcc1805 in unotest::MacrosTest::loadFromDesktop(rtl::OUString const&, rtl::OUString const&, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&) unotest/source/cpp/macros_test.cxx:50:51
>     #22 0x2b4bec69baf8 in SwUiWriterTest::testUnoCursorPointer() sw/qa/extras/uiwriter/uiwriter.cxx:1031:24
>     #23 0x2b4bec787d4f in CppUnit::TestCaller<SwUiWriterTest>::runTest() workdir/UnpackedTarball/cppunit/include/cppunit/TestCaller.h:166:6
>     #24 0x2b4bae30775d in CppUnit::TestCaseMethodFunctor::operator()() const workdir/UnpackedTarball/cppunit/src/cppunit/TestCase.cpp:32:5
>     #25 0x2b4bc6319816 in (anonymous namespace)::Protector::protect(CppUnit::Functor const&, CppUnit::ProtectorContext const&) test/source/vclbootstrapprotector.cxx:57:14
>     #26 0x2b4bae2c34b7 in CppUnit::ProtectorChain::ProtectFunctor::operator()() const workdir/UnpackedTarball/cppunit/src/cppunit/ProtectorChain.cpp:20:12
>     #27 0x2b4bbd74e126 in (anonymous namespace)::Prot::protect(CppUnit::Functor const&, CppUnit::ProtectorContext const&) unotest/source/cpp/unobootstrapprotector/unobootstrapprotector.cxx:88:12
>     #28 0x2b4bae2c34b7 in CppUnit::ProtectorChain::ProtectFunctor::operator()() const workdir/UnpackedTarball/cppunit/src/cppunit/ProtectorChain.cpp:20:12
>     #29 0x2b4bb9ad5e54 in (anonymous namespace)::Prot::protect(CppUnit::Functor const&, CppUnit::ProtectorContext const&) unotest/source/cpp/unoexceptionprotector/unoexceptionprotector.cxx:63:16
>
> SUMMARY: AddressSanitizer: heap-use-after-free sw/inc/bparr.hxx:103:21 in BigPtrEntry::GetArray() const
> Shadow bytes around the buggy address:
>   0x0c08800bd280: fa fa fd fd fd fd fd fa fa fa fd fd fd fd fd fa
>   0x0c08800bd290: fa fa fd fd fd fd fd fa fa fa fd fd fd fd fd fa
>   0x0c08800bd2a0: fa fa fd fd fd fd fd fa fa fa fd fd fd fd fd fa
>   0x0c08800bd2b0: fa fa fd fd fd fd fd fa fa fa fd fd fd fd fd fd
>   0x0c08800bd2c0: fa fa fd fd fd fd fd fa fa fa fd fd fd fd fd fa
> =>0x0c08800bd2d0: fa fa[fd]fd fd fd fd fa fa fa fd fd fd fd fd fa
>   0x0c08800bd2e0: fa fa fd fd fd fd fd fa fa fa fd fd fd fd fd fa
>   0x0c08800bd2f0: fa fa fd fd fd fd fd fa fa fa fd fd fd fd fd fa
>   0x0c08800bd300: fa fa fd fd fd fd fd fa fa fa fd fd fd fd fd fa
>   0x0c08800bd310: fa fa fd fd fd fd fd fa fa fa fd fd fd fd fd fa
>   0x0c08800bd320: fa fa fd fd fd fd fd fa fa fa fd fd fd fd fd fa
> Shadow byte legend (one shadow byte represents 8 application bytes):
>   Addressable:           00
>   Partially addressable: 01 02 03 04 05 06 07
>   Heap left redzone:       fa
>   Heap right redzone:      fb
>   Freed heap region:       fd
>   Stack left redzone:      f1
>   Stack mid redzone:       f2
>   Stack right redzone:     f3
>   Stack partial redzone:   f4
>   Stack after return:      f5
>   Stack use after scope:   f8
>   Global redzone:          f9
>   Global init order:       f6
>   Poisoned by user:        f7
>   Container overflow:      fc
>   Array cookie:            ac
>   Intra object redzone:    bb
>   ASan internal:           fe
>   Left alloca redzone:     ca
>   Right alloca redzone:    cb
> ==15622==ABORTING
>
> Error: a unit test failed, please do one of:
>
> export DEBUGCPPUNIT=TRUE            # for exception catching
> export CPPUNITTRACE="gdb --args"    # for interactive debugging on Linux
> export VALGRIND=memcheck            # for memory checking
>
> and retry using: make CppunitTest_sw_uiwriter
_______________________________________________
LibreOffice mailing list
[hidden email]
http://lists.freedesktop.org/mailman/listinfo/libreoffice
sberg sberg
Reply | Threaded
Open this post in threaded view
|

Re: OSX uiwriter stacktrace needed

In reply to this post by Miklos Vajna-4
On 06/09/2015 03:58 PM, Miklos Vajna wrote:

> On Tue, Jun 09, 2015 at 02:54:06PM +0200, Bjoern Michaelsen <[hidden email]> wrote:
>> so before pushing the unocrsrptr branch, I tried to use our CI:
>>
>>   https://gerrit.libreoffice.org/#/c/16179/
>>
>> however it turned out the uiwriter unittest was unstable when basing on it
>> today: I had crashes on Linux too, but to make it more fun not under gdb. With
>> no way to verify my changes any further I pushed the branch.
>
> Hopefully
> <http://cgit.freedesktop.org/libreoffice/core/commit/?id=eacbead4f5a4dc7c8db3d60c948e28c199aa2b10>
> fixes that.

no, tb37 kept failing with a SEGV'ing CppunitTest_sw_uiwriter with that
commit included;  probably just happened to silence one of the possible
symptoms of whatever underlying breakage (and maybe better covered by an
assert?)
_______________________________________________
LibreOffice mailing list
[hidden email]
http://lists.freedesktop.org/mailman/listinfo/libreoffice
Miklos Vajna-4 Miklos Vajna-4
Reply | Threaded
Open this post in threaded view
|

Re: OSX uiwriter stacktrace needed

Hi Stephan,

On Tue, Jun 09, 2015 at 04:03:50PM +0200, Stephan Bergmann <[hidden email]> wrote:
> no, tb37 kept failing with a SEGV'ing CppunitTest_sw_uiwriter with
> that commit included;  probably just happened to silence one of the
> possible symptoms of whatever underlying breakage (and maybe better
> covered by an assert?)

Sorry, I wasn't clear enough. There were two problems:

1) CppunitTest_sw_uiwriter sometimes failed due to division by zero.

2) The OS X-specific breakage from Bjoern's rework.

tb37 is an OS X tinderbox failing due to 2), I was talking about 1). :-)

Regards,

Miklos

_______________________________________________
LibreOffice mailing list
[hidden email]
http://lists.freedesktop.org/mailman/listinfo/libreoffice

signature.asc (188 bytes) Download Attachment
Caolán McNamara Caolán McNamara
Reply | Threaded
Open this post in threaded view
|

Re: OSX uiwriter stacktrace needed

In reply to this post by sberg
On Tue, 2015-06-09 at 16:00 +0200, Stephan Bergmann wrote:
> ...
> > ==15622==ERROR: AddressSanitizer: heap-use-after-free on address 0x604000629690 at pc 0x2b4bec6e1e2f bp 0x7fff96f22930 sp 0x7fff96f22928
> > READ of size 8 at 0x604000629690 thread T0

based on that bt, 3b397cb6cf7f673571205a91834c9b5622968df2 presumably
solves that ?

C.

_______________________________________________
LibreOffice mailing list
[hidden email]
http://lists.freedesktop.org/mailman/listinfo/libreoffice
sberg sberg
Reply | Threaded
Open this post in threaded view
|

Re: OSX uiwriter stacktrace needed

In reply to this post by Bjoern Michaelsen
My Mac --enable-dbgutil build, with
0d754a386fb44f970f33a3e71b2f0f3cfb7c4598 "Revert 're-enable test after
fix up'" locally reverted, fails CppunitTest_sw_uiwriter with

> Assertion failed: (!m_pFirst && !m_pLast && "There are still indices registered"), function ~SwIndexReg, file sw/source/core/bastyp/index.cxx, line 226.

at

> * thread #1: tid = 0x8f700, 0x00007fff8f695286 libsystem_kernel.dylib`__pthread_kill + 10, queue = 'com.apple.main-thread', stop reason = signal SIGABRT
>   * "frame #0: 0x00007fff8f695286 libsystem_kernel.dylib`__pthread_kill + 10
> "    "frame #1: 0x00007fff8cd1842f libsystem_pthread.dylib`pthread_kill + 90
> "    "frame #2: 0x00007fff97f91b53 libsystem_c.dylib`abort + 129
> "    "frame #3: 0x00007fff97f59c39 libsystem_c.dylib`__assert_rtn + 321
> "    "frame #4: 0x000000011053b8b5 libswlo.dylib`SwIndexReg::~SwIndexReg(this=0x00000001251fe258) + 133 at sw/source/core/bastyp/index.cxx:226
> "    "frame #5: 0x00000001108ef8fc libswlo.dylib`SwContentNode::~SwContentNode(this=0x00000001251fe1f8) + 300 at sw/source/core/docnode/node.cxx:1013
> "    "frame #6: 0x0000000110de4a7d libswlo.dylib`SwTextNode::~SwTextNode(this=0x00000001251fe1f8) + 1277 at sw/source/core/txtnode/ndtxt.cxx:273
> "    "frame #7: 0x0000000110de4bf5 libswlo.dylib`SwTextNode::~SwTextNode(this=0x00000001251fe1f8) + 21 at sw/source/core/txtnode/ndtxt.cxx:241
> "    "frame #8: 0x0000000110de4c89 libswlo.dylib`SwTextNode::~SwTextNode(this=0x00000001251fe1f8) + 25 at sw/source/core/txtnode/ndtxt.cxx:241
> "    "frame #9: 0x0000000110de4cb9 libswlo.dylib`non-virtual thunk to SwTextNode::~SwTextNode(this=0x00000001251fe228) + 25 at sw/source/core/txtnode/ndtxt.cxx:240
> "    "frame #10: 0x00000001108fe0fb libswlo.dylib`SwNodes::RemoveNode(this=0x000000014ff022d0, nDelPos=9, nSz=1, bDel=true) + 2811 at sw/source/core/docnode/nodes.cxx:2291
> "    "frame #11: 0x0000000110902a6a libswlo.dylib`SwNodes::DelNodes(this=0x000000014ff022d0, rStart=0x00007fff5fbf3df8, nCnt=11) + 282 at sw/source/core/docnode/nodes.cxx:1374
> "    "frame #12: 0x00000001106e17f0 libswlo.dylib`SwDoc::~SwDoc(this=0x000000014ff08a50) + 6864 at sw/source/core/doc/docnew.cxx:501
> "    "frame #13: 0x00000001106e3415 libswlo.dylib`SwDoc::~SwDoc(this=0x000000014ff08a50) + 21 at sw/source/core/doc/docnew.cxx:385
> "    "frame #14: 0x00000001106e3439 libswlo.dylib`SwDoc::~SwDoc(this=0x000000014ff08a50) + 25 at sw/source/core/doc/docnew.cxx:385
> "    "frame #15: 0x00000001113d72ba libswlo.dylib`SwDocShell::RemoveLink(this=0x000000014ff2e9a0) + 506 at sw/source/uibase/app/docshini.cxx:466
> "    "frame #16: 0x00000001113d6f11 libswlo.dylib`SwDocShell::~SwDocShell(this=0x000000014ff2e9a0, vtt=0x0000000111af9d70) + 705 at sw/source/uibase/app/docshini.cxx:388
> "    "frame #17: 0x00000001113d7320 libswlo.dylib`SwDocShell::~SwDocShell(this=0x000000014ff2e9a0) + 32 at sw/source/uibase/app/docshini.cxx:378
> "    "frame #18: 0x00000001113d7419 libswlo.dylib`SwDocShell::~SwDocShell(this=0x000000014ff2e9a0) + 25 at sw/source/uibase/app/docshini.cxx:378
> "    "frame #19: 0x00000001113d74c2 libswlo.dylib`virtual thunk to SwDocShell::~SwDocShell(this=0x000000014ff2ea60) + 34 at sw/source/uibase/app/docshini.cxx:377
> "    "frame #20: 0x000000010d48546e libsfxlo.dylib`SvRefBase::ReleaseRef(this=0x000000014ff2ea60) + 190 at include/tools/ref.hxx:196
> "    "frame #21: 0x000000010d485387 libsfxlo.dylib`tools::SvRef<SfxObjectShell>::~SvRef(this=0x0000000123732808) + 55 at include/tools/ref.hxx:52
> "    "frame #22: 0x000000010d482b05 libsfxlo.dylib`tools::SvRef<SfxObjectShell>::~SvRef(this=0x0000000123732808) + 21 at include/tools/ref.hxx:51
> "    "frame #23: 0x000000010d92a8c7 libsfxlo.dylib`IMPL_SfxBaseModel_DataContainer::~IMPL_SfxBaseModel_DataContainer(this=0x0000000123732800) + 439 at sfx2/source/doc/sfxbasemodel.cxx:247
> "    "frame #24: 0x000000010d92a4e5 libsfxlo.dylib`IMPL_SfxBaseModel_DataContainer::~IMPL_SfxBaseModel_DataContainer(this=0x0000000123732800) + 21 at sfx2/source/doc/sfxbasemodel.cxx:246
> "    "frame #25: 0x000000010d92a509 libsfxlo.dylib`IMPL_SfxBaseModel_DataContainer::~IMPL_SfxBaseModel_DataContainer(this=0x0000000123732800) + 25 at sfx2/source/doc/sfxbasemodel.cxx:246
> "    "frame #26: 0x000000010d9033cf libsfxlo.dylib`SfxBaseModel::dispose(this=0x000000014fed6d38) + 1055 at sfx2/source/doc/sfxbasemodel.cxx:795
> "    "frame #27: 0x000000011174b0b8 libswlo.dylib`SwXTextDocument::dispose(this=0x000000014fed6c08) + 24 at sw/source/uibase/uno/unotxdoc.cxx:588
> "    "frame #28: 0x000000011174b11c libswlo.dylib`non-virtual thunk to SwXTextDocument::dispose(this=0x000000014fed6d38) + 28 at sw/source/uibase/uno/unotxdoc.cxx:586
> "    "frame #29: 0x000000010d907ff3 libsfxlo.dylib`SfxBaseModel::close(this=0x000000014fed6d38, bDeliverOwnership='\x01') + 1491 at sfx2/source/doc/sfxbasemodel.cxx:1418
> "    "frame #30: 0x000000011174b233 libswlo.dylib`SwXTextDocument::close(this=0x000000014fed6c08, bDeliverOwnership='\x01') + 211 at sw/source/uibase/uno/unotxdoc.cxx:596
> "    "frame #31: 0x000000011174b306 libswlo.dylib`non-virtual thunk to SwXTextDocument::close(this=0x000000014fed6d38, bDeliverOwnership='\x01') + 38 at sw/source/uibase/uno/unotxdoc.cxx:591
> "    "frame #32: 0x000000010d90301c libsfxlo.dylib`SfxBaseModel::dispose(this=0x000000014fed6d38) + 108 at sfx2/source/doc/sfxbasemodel.cxx:754
> "    "frame #33: 0x000000011174b0b8 libswlo.dylib`SwXTextDocument::dispose(this=0x000000014fed6c08) + 24 at sw/source/uibase/uno/unotxdoc.cxx:588
> "    "frame #34: 0x000000011174b0f9 libswlo.dylib`non-virtual thunk to SwXTextDocument::dispose(this=0x000000014fed6c30) + 25 at sw/source/uibase/uno/unotxdoc.cxx:586
> "    "frame #35: 0x000000010ccec0e3 libtest_sw_uiwriter.dylib`SwUiWriterTest::testUnoCursorPointer(this=0x0000000100676d80) + 3299 at sw/qa/extras/uiwriter/uiwriter.cxx:1044
> "    "frame #36: 0x000000010cd138b5 libtest_sw_uiwriter.dylib`CppUnit::TestCaller<SwUiWriterTest>::runTest(this=0x0000000100676cf0) + 101 at workdir/UnpackedTarball/cppunit/include/cppunit/TestCaller.h:166
> "    "frame #37: 0x0000000100176f35 libcppunit-1.13.0.dylib`CppUnit::TestCaseMethodFunctor::operator(this=0x00007fff5fbf5fa0)() const + 101 at workdir/UnpackedTarball/cppunit/src/cppunit/TestCase.cpp:32
> "    "frame #38: 0x00000001030dd761 libvclbootstrapprotector.dylib`(anonymous namespace)::Protector::protect(this=0x0000000100339080, functor=0x00007fff5fbf5fa0, (null)=0x00007fff5fbf5df8) + 33 at test/source/vclbootstrapprotector.cxx:57
> "    "frame #39: 0x00000001001661e8 libcppunit-1.13.0.dylib`CppUnit::ProtectorChain::ProtectFunctor::operator(this=0x0000000138e66db0)() const + 40 at workdir/UnpackedTarball/cppunit/src/cppunit/ProtectorChain.cpp:20
> "    "frame #40: 0x00000001004d9f91 unobootstrapprotector.dylib`(anonymous namespace)::Prot::protect(this=0x0000000100319eb0, functor=0x0000000138e66db0, (null)=0x00007fff5fbf5df8) + 33 at unotest/source/cpp/unobootstrapprotector/unobootstrapprotector.cxx:88
> "    "frame #41: 0x00000001001661e8 libcppunit-1.13.0.dylib`CppUnit::ProtectorChain::ProtectFunctor::operator(this=0x00000001362f1f30)() const + 40 at workdir/UnpackedTarball/cppunit/src/cppunit/ProtectorChain.cpp:20
> "    "frame #42: 0x00000001002f8f5f unoexceptionprotector.dylib`(anonymous namespace)::Prot::protect(this=0x000000010031b910, functor=0x00000001362f1f30, context=0x00007fff5fbf5df8) + 79 at unotest/source/cpp/unoexceptionprotector/unoexceptionprotector.cxx:63
> "    "frame #43: 0x00000001001661e8 libcppunit-1.13.0.dylib`CppUnit::ProtectorChain::ProtectFunctor::operator(this=0x0000000138e0c740)() const + 40 at workdir/UnpackedTarball/cppunit/src/cppunit/ProtectorChain.cpp:20
> "    "frame #44: 0x0000000100147c6f libcppunit-1.13.0.dylib`CppUnit::DefaultProtector::protect(this=0x0000000103101260, functor=0x0000000138e0c740, context=0x00007fff5fbf5df8) + 79 at workdir/UnpackedTarball/cppunit/src/cppunit/DefaultProtector.cpp:15
> "    "frame #45: 0x00000001001661e8 libcppunit-1.13.0.dylib`CppUnit::ProtectorChain::ProtectFunctor::operator(this=0x00000001362bf4d0)() const + 40 at workdir/UnpackedTarball/cppunit/src/cppunit/ProtectorChain.cpp:20
> "    "frame #46: 0x0000000100164ec1 libcppunit-1.13.0.dylib`CppUnit::ProtectorChain::protect(this=0x0000000103101220, functor=0x00007fff5fbf5fa0, context=0x00007fff5fbf5df8) + 1745 at workdir/UnpackedTarball/cppunit/src/cppunit/ProtectorChain.cpp:77
> "    "frame #47: 0x0000000100196883 libcppunit-1.13.0.dylib`CppUnit::TestResult::protect(this=0x00007fff5fbf70e8, functor=0x00007fff5fbf5fa0, test=0x0000000100676cf0, shortDescription=0x00007fff5fbf5f78) + 99 at workdir/UnpackedTarball/cppunit/src/cppunit/TestResult.cpp:181
> "    "frame #48: 0x00000001001766d8 libcppunit-1.13.0.dylib`CppUnit::TestCase::run(this=0x0000000100676cf0, result=0x00007fff5fbf70e8) + 744 at workdir/UnpackedTarball/cppunit/src/cppunit/TestCase.cpp:91
> "    "frame #49: 0x00000001001775ed libcppunit-1.13.0.dylib`CppUnit::TestComposite::doRunChildTests(this=0x0000000100673e50, controller=0x00007fff5fbf70e8) + 125 at workdir/UnpackedTarball/cppunit/src/cppunit/TestComposite.cpp:64
> "    "frame #50: 0x000000010017746a libcppunit-1.13.0.dylib`CppUnit::TestComposite::run(this=0x0000000100673e50, result=0x00007fff5fbf70e8) + 90 at workdir/UnpackedTarball/cppunit/src/cppunit/TestComposite.cpp:23
> "    "frame #51: 0x00000001001775ed libcppunit-1.13.0.dylib`CppUnit::TestComposite::doRunChildTests(this=0x0000000100673e10, controller=0x00007fff5fbf70e8) + 125 at workdir/UnpackedTarball/cppunit/src/cppunit/TestComposite.cpp:64
> "    "frame #52: 0x000000010017746a libcppunit-1.13.0.dylib`CppUnit::TestComposite::run(this=0x0000000100673e10, result=0x00007fff5fbf70e8) + 90 at workdir/UnpackedTarball/cppunit/src/cppunit/TestComposite.cpp:23
> "    "frame #53: 0x00000001001a290e libcppunit-1.13.0.dylib`CppUnit::TestRunner::WrappingSuite::run(this=0x0000000100673dd0, result=0x00007fff5fbf70e8) + 78 at workdir/UnpackedTarball/cppunit/src/cppunit/TestRunner.cpp:47
> "    "frame #54: 0x00000001001963c2 libcppunit-1.13.0.dylib`CppUnit::TestResult::runTest(this=0x00007fff5fbf70e8, test=0x0000000100673dd0) + 82 at workdir/UnpackedTarball/cppunit/src/cppunit/TestResult.cpp:148
> "    "frame #55: 0x00000001001a2c28 libcppunit-1.13.0.dylib`CppUnit::TestRunner::run(this=0x00007fff5fbf6758, controller=0x00007fff5fbf70e8, testPath=0x00007fff5fbf66f8) + 104 at workdir/UnpackedTarball/cppunit/src/cppunit/TestRunner.cpp:96
> "    "frame #56: 0x0000000100002bf1 cppunittester`(anonymous namespace)::ProtectedFixtureFunctor::run(this=0x00007fff5fbf6ee0) const + 2705 at sal/cppunittester/cppunittester.cxx:276
> "    "frame #57: 0x00000001000018e1 cppunittester`sal_main() + 3521 at sal/cppunittester/cppunittester.cxx:379
> "    "frame #58: 0x0000000100000b07 cppunittester`main(argc=21, argv=0x00007fff5fbf7190) + 39 at sal/cppunittester/cppunittester.cxx:297
> "    "frame #59: 0x00007fff9549c5c9 libdyld.dylib`start + 1

_______________________________________________
LibreOffice mailing list
[hidden email]
http://lists.freedesktop.org/mailman/listinfo/libreoffice
Caolán McNamara Caolán McNamara
Reply | Threaded
Open this post in threaded view
|

Re: OSX uiwriter stacktrace needed

On Wed, 2015-06-10 at 08:40 +0200, Stephan Bergmann wrote:
> My Mac --enable-dbgutil build, with
> 0d754a386fb44f970f33a3e71b2f0f3cfb7c4598 "Revert 're-enable test after
> fix up'" locally reverted, fails CppunitTest_sw_uiwriter with
>
> > Assertion failed: (!m_pFirst && !m_pLast && "There are still indices registered"), function ~SwIndexReg, file sw/source/core/bastyp/index.cxx, line 226.

I imagine that reset on the pCursor before dispose would clear that
assert. But then at that point the test presumably becomes pointless.

C.

_______________________________________________
LibreOffice mailing list
[hidden email]
http://lists.freedesktop.org/mailman/listinfo/libreoffice
Bjoern Michaelsen Bjoern Michaelsen
Reply | Threaded
Open this post in threaded view
|

Re: OSX uiwriter stacktrace needed

Hi,

On Wed, Jun 10, 2015 at 09:12:32AM +0100, Caolán McNamara wrote:
> On Wed, 2015-06-10 at 08:40 +0200, Stephan Bergmann wrote:
> > > Assertion failed: (!m_pFirst && !m_pLast && "There are still indices registered"), function ~SwIndexReg, file sw/source/core/bastyp/index.cxx, line 226.
>
> I imagine that reset on the pCursor before dispose would clear that
> assert. But then at that point the test presumably becomes pointless.

I checked with the attached patch against
master@a861a234b0f5f39b06fd6180655182c167c3a94d and get:
> CPPUNITTRACE="gdb --args" make CppunitTest_sw_uiwriter debug=T
> ...
> debug:4359:1: DidTestCleanup: Document disposing
> debug:4359:1: NodeIndex at 0
> debug:4359:1: Position at 0
> debug:4359:1: UnoCursorPointer is disposed.
> ...

assuming it to be the same on OSX, pCursor should be innocent -- unless we leak
an SwIndex (on OSX only?!?).

Best,

Bjoern

_______________________________________________
LibreOffice mailing list
[hidden email]
http://lists.freedesktop.org/mailman/listinfo/libreoffice

didtestcleanup.diff (3K) Download Attachment
sberg sberg
Reply | Threaded
Open this post in threaded view
|

Re: OSX uiwriter stacktrace needed

On 06/10/2015 12:19 PM, Bjoern Michaelsen wrote:
> assuming it to be the same on OSX, pCursor should be innocent -- unless we leak
> an SwIndex (on OSX only?!?).

Yes, we do leak an SwIndex on Mac, see the failed assert in my previous
mail.
_______________________________________________
LibreOffice mailing list
[hidden email]
http://lists.freedesktop.org/mailman/listinfo/libreoffice
sberg sberg
Reply | Threaded
Open this post in threaded view
|

Re: OSX uiwriter stacktrace needed

In reply to this post by Bjoern Michaelsen
On 06/09/2015 02:54 PM, Bjoern Michaelsen wrote:
> However, OSX seems to be reliably broken now according to the tinderboxes.
> If someone manages to provide a backtrace, I would appreciate that, so I can
> investigate what broke and fix it.

should be fixed now with
<http://cgit.freedesktop.org/libreoffice/core/commit/?id=54253f382e77483b2831af82cf90e2afb0cd55db>
"Ensure single RTTI symbol instance" (which also re-enables the test)

_______________________________________________
LibreOffice mailing list
[hidden email]
http://lists.freedesktop.org/mailman/listinfo/libreoffice