Hello,

we are seeing segfaults in the testListLabelPDFExport from
CppunitTest_sw_globalfilter at least on aarch64 and ppc64le in Fedora.
To some degree it's related to
https://git.libreoffice.org/core/+/ea0f9776ed8e7e9809853d292923b86756274564
because reverting the commit removes the segfault, but the test still
fails on some assert. The 7-6-branching-point has no such issue.

...
[Thread 0x7fffd2a0e7a0 (LWP 2064868) exited]
Test::testDateFormFieldCharacterFormatting finished in: 1481ms
[_RUN_____] testListLabelPDFExport::TestBody
private:factory/swriter:

Thread 1 "cppunittester" received signal SIGSEGV, Segmentation fault.
testListLabelPDFExport::TestBody (this=0x102a95d0) at 
/usr/include/c++/13/bits/unique_ptr.h:199
199           pointer    _M_ptr() const noexcept { return std::get<0>(_M_t); }
(gdb) where
#0  testListLabelPDFExport::TestBody() (this=0x102a95d0) at 
/usr/include/c++/13/bits/unique_ptr.h:199
#1  0x00007fffdc9aaf4c in std::__invoke_impl<void, void 
(testListLabelPDFExport::*&)(), 
testListLabelPDFExport*&>(std::__invoke_memfun_deref, void 
(testListLabelPDFExport::*&)(), testListLabelPDFExport*&) (__f=<optimized out>, 
__t=<optimized out>) at /usr/include/c++/13/bits/invoke.h:71
#2  std::__invoke<void (testListLabelPDFExport::*&)(), 
testListLabelPDFExport*&>(void (testListLabelPDFExport::*&)(), 
testListLabelPDFExport*&) (__fn=<optimized out>)
    at /usr/include/c++/13/bits/invoke.h:96
#3  std::_Bind<void 
(testListLabelPDFExport::*(testListLabelPDFExport*))()>::__call<void, , 
0ul>(std::tuple<>&&, std::_Index_tuple<0ul>) (__args=<optimized out>, 
this=<optimized out>)
    at /usr/include/c++/13/functional:506
#4  std::_Bind<void 
(testListLabelPDFExport::*(testListLabelPDFExport*))()>::operator()<, void>() 
(this=<optimized out>) at /usr/include/c++/13/functional:591
#5  std::__invoke_impl<void, std::_Bind<void 
(testListLabelPDFExport::*(testListLabelPDFExport*))()>&>(std::__invoke_other, 
std::_Bind<void (testListLabelPDFExport::*(testListLabelPDFExport*))()>&) 
(__f=<optimized out>) at /usr/include/c++/13/bits/invoke.h:61
#6  std::__invoke_r<void, std::_Bind<void 
(testListLabelPDFExport::*(testListLabelPDFExport*))()>&>(std::_Bind<void 
(testListLabelPDFExport::*(testListLabelPDFExport*))()>&)
    (__fn=<optimized out>) at /usr/include/c++/13/bits/invoke.h:111
#7  std::_Function_handler<void (), std::_Bind<void 
(testListLabelPDFExport::*(testListLabelPDFExport*))()> 
>::_M_invoke(std::_Any_data const&) (__functor=<optimized out>)
    at /usr/include/c++/13/bits/std_function.h:290
#8  0x00007fffdc9ab424 in std::function<void ()>::operator()() const 
(this=<optimized out>) at /usr/include/c++/13/bits/std_function.h:591
#9  CppUnit::TestCaller<testListLabelPDFExport>::runTest() (this=<error reading 
variable: value has been optimized out>)
    at 
/home/sharkcz/projects/libreoffice/workdir/UnpackedTarball/cppunit/include/cppunit/TestCaller.h:175
#10 0x00007ffff7ebc578 in CppUnit::TestCaseMethodFunctor::operator()() const () 
at 
/home/sharkcz/projects/libreoffice/workdir/UnpackedTarball/cppunit/src/cppunit/.libs/libcppunit-1.15.so.1
#11 0x00007fffdd0102fc in (anonymous 
namespace)::Protector::protect(CppUnit::Functor const&, 
CppUnit::ProtectorContext const&) (this=<optimized out>, functor=<optimized 
out>)
    at 
/home/sharkcz/projects/libreoffice/test/source/vclbootstrapprotector.cxx:46
#12 0x00007ffff7eb303c in CppUnit::ProtectorChain::ProtectFunctor::operator()() 
const ()
    at 
/home/sharkcz/projects/libreoffice/workdir/UnpackedTarball/cppunit/src/cppunit/.libs/libcppunit-1.15.so.1
#13 0x00007fffe9a5067c in (anonymous namespace)::Prot::protect(CppUnit::Functor 
const&, CppUnit::ProtectorContext const&) (this=<optimized out>, 
functor=<optimized out>)
    at 
/home/sharkcz/projects/libreoffice/unotest/source/cpp/unobootstrapprotector/unobootstrapprotector.cxx:78
#14 0x00007ffff7eb303c in CppUnit::ProtectorChain::ProtectFunctor::operator()() 
const ()
    at 
/home/sharkcz/projects/libreoffice/workdir/UnpackedTarball/cppunit/src/cppunit/.libs/libcppunit-1.15.so.1


                Dan

Reply via email to