summaryrefslogtreecommitdiff
path: root/include/unotools
AgeCommit message (Collapse)Author
2018-08-31tdf#42949 Fix IWYU warnings: boost/optional in include/Gabor Kelemen
Found with bin/find-unneeded-includes a few low hanging boost/optional headers. This gets us about 75M includebloat reduction; still much to go Change-Id: I5c737631767970f9145609aad298a5d11e3fed65 Reviewed-on: https://gerrit.libreoffice.org/59840 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
2018-08-13short-circuit IsFuzzing when FUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION definedCaolán McNamara
Change-Id: Ib82daad19185de3d271adee3cdb6d39a35e9c082 Reviewed-on: https://gerrit.libreoffice.org/58941 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
2018-07-27unotools: avoid -Werror=deprecated-copy (GCC trunk towards GCC 9)Stephan Bergmann
...by explicitly defaulting the copy/move functions (and, where needed in turn, also a default ctor) for classes that have a user-declared dtor that does nothing other than an implicitly-defined one would do, but needs to be user- declared because it is virtual and potentially serves as a key function to emit the vtable, or is non-public, etc.; and by removing explicitly user- provided functions that do the same as their implicitly-defined counterparts, but may prevent implicitly declared copy functions from being defined as non- deleted in the future. (Even if such a user-provided function was declared non-inline in an include file, the apparently-used implicitly-defined copy functions are already include, so why bother with non-inline functions.) Change-Id: Iaa08ef916a2d266e011a2cb66592b377cb1eb23c Reviewed-on: https://gerrit.libreoffice.org/58095 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2018-07-26loplugin:returnconstant in tools,comphelper,unotoolsNoel Grandin
Change-Id: Iabc3c67b4cdcd0344a37c533bf92dd00cd4700d8 Reviewed-on: https://gerrit.libreoffice.org/57974 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-07-23Fix typosAndrea Gelmini
Change-Id: Id7d0de124c4b9006db8c28e5cebb3ba38b0143ee Reviewed-on: https://gerrit.libreoffice.org/57602 Tested-by: Jenkins Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
2018-07-10pass SvStream around by std::unique_ptrNoel Grandin
and give utl::OStreamWrapper a new constructor so that it knows it is taking ownership of the SvStream, which appears to fix several leaks Change-Id: Idcbcca9b81a4f0345fd8b8c8a2f4e84213686a6b Reviewed-on: https://gerrit.libreoffice.org/57187 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-06-08tdf#115007: Use [NatNum12 params...] syntaxMike Kaganski
This allows using all the libnumbertext library functions. [NatNum12] gives cardinal number names (one, two, three, ...) [NatNum12 ordinal] gives ordinal number names (first, second, third, ...) [NatNum12 ordinal-number] gives ordinal indicators (1st, 2nd, 3rd, ...) [NatNum12 money USD][$-409] gives formal English (US) money text ... etc (see numbertext.org for syntax). Change-Id: I16dbb44d8d4bdb82a1b950de6d438c8311b554ff Reviewed-on: https://gerrit.libreoffice.org/54366 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: László Németh <nemeth@numbertext.org>
2018-06-06enable incremental linking on windowsNoel Grandin
requires a handful of workarounds Change-Id: I77c25580135eeec437716eceea1412607f8d14ca Reviewed-on: https://gerrit.libreoffice.org/55244 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-06-05tdf#42949 remove unused compheler includes ..Jochen Nitschke
and fix the fallout Change-Id: I15bc5d626f4d157cbc69a87392078b41e621d14e Reviewed-on: https://gerrit.libreoffice.org/54882 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
2018-05-28loplugin:unusedmethodsNoel Grandin
Change-Id: I64df1f467986b3d70c058adff289a6dd8f00fb20 Reviewed-on: https://gerrit.libreoffice.org/54821 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-05-20tdf#35798: Hide empty Database fields' paragraphs (+ compat option)Mike Kaganski
With this change, Database fields that expand to empty values behave as if they are "Hidden Paragraph" fields. A compatibility option to enable this behaviour is added. The option is enabled by default, and for any non-native documents (for compatibility with other office suites). For existing (F)ODT documents, the option is disabled for those documents that don't have this setting set, to keep the layout of legacy documents. Change-Id: Ic5e8cb15a3a7d1a765a984eef4b0d97666df7dfd Reviewed-on: https://gerrit.libreoffice.org/54552 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2018-05-03tdf#117171 support localized number name numbering stylesLászló Németh
in page number, chapter and outline numbering in ~30 languages by integrating libnumbertext library. - offapi: add linguistic2::NumberText New NumberingType constants: - ordinal indicators (1st, 2nd, 3rd...) - cardinal number names (One, Two, Three...) - ordinal number names (First, Second, Third...) Note: these numberings are parts of OOXML, too. Plain text files of Libnumbertext's language data are installed in share/numbertext (similar to share/fingerprint), allowing further customization. Change-Id: I4034da0a40a8c926f14a3f591749a89a8d807d5a Reviewed-on: https://gerrit.libreoffice.org/53313 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: László Németh <nemeth@numbertext.org>
2018-04-26identify tab pages by name for save/storing active tabCaolán McNamara
Change-Id: Id66f8ff62ed08724702572f457b9fc857d567e89 Reviewed-on: https://gerrit.libreoffice.org/53465 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
2018-04-25Revert "make UcbStreamHelper return SvStream by std::unique_ptr"Noel Grandin
This reverts commit eeefb8c440b514cefdc4e82cc06843da9eabeb13. this was pushed in error
2018-04-25make UcbStreamHelper return SvStream by std::unique_ptrNoel Grandin
Change-Id: I408f9193680ea73c61fcfb2bd1e860152219702c
2018-03-08loplugin:constantparam in svtools..unotoolsNoel Grandin
Change-Id: I6e72fbe44dcb65ee5162448e9a72e6437d56b044 Reviewed-on: https://gerrit.libreoffice.org/50948 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-02-05tdf#108523 Removed @author annotations.Manuj Vashist
Change-Id: I6a60128c413beab6cabb857c073607e15ddbc98f Reviewed-on: https://gerrit.libreoffice.org/49215 Reviewed-by: Samuel Mehrbrodt <Samuel.Mehrbrodt@cib.de> Tested-by: Samuel Mehrbrodt <Samuel.Mehrbrodt@cib.de>
2018-02-01Fix typosAndrea Gelmini
Change-Id: I455efa82de60b764a500e1cc092ae08e800ec824 Reviewed-on: https://gerrit.libreoffice.org/49068 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Michael Stahl <mstahl@redhat.com>
2018-01-30Typ-o negativIlmari Lauhakangas
Fixed some typos and translated a couple of German words Change-Id: I24ae28dd537ba283a9480413659f85bd6711acad Reviewed-on: https://gerrit.libreoffice.org/48892 Reviewed-by: Julien Nabet <serval2412@yahoo.fr> Tested-by: Julien Nabet <serval2412@yahoo.fr>
2018-01-14Fix typosAndrea Gelmini
Change-Id: I2b4988e1d81fe60f7699362480cd739d2620c053 Reviewed-on: https://gerrit.libreoffice.org/47856 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
2018-01-11loplugin:useuniqueptr in tools,stoc,unotoolsNoel Grandin
Change-Id: Ia72b65577143623cedc7a40bc34f7fb897add097 Reviewed-on: https://gerrit.libreoffice.org/47726 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-01-04loplugin:unusedfieldsNoel Grandin
fix the ReturnStmt check Change-Id: I95076076bd1313d23798c4615ea12910c86ed9a8 Reviewed-on: https://gerrit.libreoffice.org/47309 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-01-03loplugin:singlevalfields improve copy constructor checkNoel Grandin
Change-Id: Id1e7fbecd9e9f816553d2e678c3f1b7890fc4db8 Reviewed-on: https://gerrit.libreoffice.org/47293 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-12-24loplugin:passstuffbyref even more return improvementsNoel Grandin
Change-Id: I2a752025cd429e4d271626402dce5d8a8b0c76d2 Reviewed-on: https://gerrit.libreoffice.org/47021 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-12-19Read some configuration items directlyStephan Bergmann
...removing them from SvtSaveOptions Change-Id: I922ec0f88872b1f2d99c6a55faad00143d944473 Reviewed-on: https://gerrit.libreoffice.org/46797 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2017-12-19Don't leak SvtSaveOptions instance through ItemHolder1::holdConfigItemStephan Bergmann
...where ItemHolder1 apparently leaks the items ever since > commit ef2c49c9a5788e35249d8d5406a09c84ecd062ee > Author: Rüdiger Timm <rt@openoffice.org> > Date: Fri Nov 11 07:50:10 2005 +0000 > > INTEGRATION: CWS perform06 (1.6.60); FILE MERGED > 2005/11/07 13:32:40 as 1.6.60.2: #i56589# dont cache GlobalEventConfig() inside ItemHolder1^... combination of static pointer and WeakImplHelper cant not work > 2005/10/25 08:04:02 as 1.6.60.1: #i56589# hold config items alive till office die That started to cause problems when 78a6ce17f06fbe13b806fd563e85a4fe60d3bcfc "DELETEZ->std::unique_ptr in toolkit,unotools" now stopped to leak the global static std::unique_ptr<SvtLoadSaveOptions_Impl> pOptions; in unotools/source/config/saveopt.cxx when any SvtSaveOptions instances are leaked, so that at least PythonTest_pyuno_pytests_testcollections started to fail in ASan builds now when that global pOptions is destroyed at exit. I don't see a good reason for that ItemHolder1::holdConfigItem stuff here, so lets try and drop it from SvtSaveOptions at least. Change-Id: I6d44708fc4e2e5dfafaa9bfe8f3fa2f854ae0952 Reviewed-on: https://gerrit.libreoffice.org/46726 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2017-12-19inline use-once typedefsNoel Grandin
Change-Id: I5c3ffc03c26b3428f1f336e6ecba7838a1cf1157 Reviewed-on: https://gerrit.libreoffice.org/46764 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-12-19Read/write 'encrypt to self' bitKatarina Behrens
use some template functions to avoid duplicate code Change-Id: Ia178ea3a0561e34e0431749262f5f8f1f49b4fe7 Reviewed-on: https://gerrit.libreoffice.org/46693 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
2017-12-19Read/write preferred GPG signing/encryption keysKatarina Behrens
Change-Id: I3e21469c5f4c4f199407bbe9faba2e2ddca531b3 Reviewed-on: https://gerrit.libreoffice.org/46692 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
2017-12-15Make temp copy of dbaccess/qa/unit/data/firebird_empty.odb for testingStephan Bergmann
...in CppunitTest_dbaccess_firebird_test. Otherwise, the test would fail with > Test name: FirebirdTest::testEmptyDBConnection > An uncaught exception of type com.sun.star.sdbc.SQLException > - The connection can not be established. No storage or URL was given. if dbaccess/qa/unit/data/firebird_empty.odb is read-only, as DocumentStorageAccess::impl_openSubStorage_nothrow (dbaccess/source/core/dataaccess/ModelImpl.cxx) takes m_pModelImplementation->m_bDocumentReadOnly into account and returns a null xStorage. Adds a move ctor to utl::TempFile (thus causing copy ctor and copy assignment op to be implicitly deleted), but leaves any move assignment op undeclared for now, as none happens to be needed (yet). Change-Id: I6f9eff07eb54f1364a0560ffa4cf1f676a319d16 Reviewed-on: https://gerrit.libreoffice.org/46561 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2017-12-06unotools: remove not needed UcbStreamHelper inheritanceMiklos Vajna
This class only has static member functions, nothing requires that inheritance. Change-Id: I31db802d0a9dcda01772b1e09a68af770868358d Reviewed-on: https://gerrit.libreoffice.org/45924 Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk> Tested-by: Jenkins <ci@libreoffice.org>
2017-11-09rename AvoidConfig to FuzzingCaolán McNamara
cause that's what its really used for and a couple of cases are not specifically about avoiding config but avoiding uninteresting disk acccess and what not Change-Id: I4c6454f98388579fcd0bf9798321d30408ab65ee Reviewed-on: https://gerrit.libreoffice.org/44491 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
2017-11-05Replace lists by vectors in configmgr/unotoolsJulien Nabet
+ use for range loops Change-Id: I4cebcf0536dc6c3ddfdce9532e94c0c380ea3ab9 Reviewed-on: https://gerrit.libreoffice.org/44308 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
2017-10-27LocaleDataWrapper::stringToDouble() w/ decimalSeparatorAlternative, tdf#81671Eike Rathke
To be used instead of rtl::math::stringToDouble() if locale dependent separators are involved. Change-Id: I54359c981901dc57b3d9312b0bfd2f2a14fccb33
2017-10-27Add LocaleDataWrapper::getNumDecimalSepAlt(), tdf#81671Eike Rathke
Change-Id: Id3a16004603685ef859506c2c6d86f8ff097c1d0
2017-10-27Let LocaleDataWrapper::getLocaleItem() return LocaleDataItem2&, tdf#81671Eike Rathke
Change-Id: I16cfe81dd3ce0c8c2e905d55bea13df134c7a398
2017-10-27Supersede with XLocaleData5, LocaleData2, tdf#81671Eike Rathke
Change-Id: I17332be77f9c66c4fcfb7e3f3144ec624b804f94
2017-10-26loplugin:constmethod in svlNoel Grandin
Change-Id: If92869e19c413e11f1f299a97f96b9637aaba65d Reviewed-on: https://gerrit.libreoffice.org/43864 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-10-26loplugin:constmethods in unotoolsNoel Grandin
Change-Id: I13df4e184a826682f34a1d9e974b601397ba4a3d Reviewed-on: https://gerrit.libreoffice.org/43865 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-10-23overload std::hash for OUString and OStringNoel Grandin
no need to explicitly specify it anymore Change-Id: I6ad9259cce77201fdd75152533f5151aae83e9ec Reviewed-on: https://gerrit.libreoffice.org/43567 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-10-13tdf#110742 add support for icon themes via extension managerCaolán McNamara
Change-Id: Ic33c086ef67cdcb634d9f03f84799c234fe3beec Reviewed-on: https://gerrit.libreoffice.org/43341 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
2017-10-06Revert "remove handing of deprecated Storage path option"Noel Grandin
This reverts commit b71fdc67ed1efd421b9b1c747708958e8e09f73c. since Jochen indicates that there is a bug in it Change-Id: I786a7885a308cb43b99d9930ed385a75bbcd9495 Reviewed-on: https://gerrit.libreoffice.org/43192 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-10-05loplugin:finalclasses in unotools..vbahelperNoel Grandin
Change-Id: I9350f9d37eaba99a1d74e103c969a9dcfe795497 Reviewed-on: https://gerrit.libreoffice.org/43160 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-10-05remove handing of deprecated Storage path optionJochen Nitschke
The only user of StoragePath was TemplateFolderCacheImpl::openCacheStream which uses TempPath for the cache file now. Change-Id: Ia21b5aa804222f28a3af3779a0ecc4789c1860b3 Reviewed-on: https://gerrit.libreoffice.org/41087 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-09-12use std::unique_ptr in TItemInfoNoel Grandin
and inline the TItems typedef Change-Id: I0c50d12d53ce4b52c330cad8790a65065ebdd82e Reviewed-on: https://gerrit.libreoffice.org/42182 Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk> Tested-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-09-06Don't call NotifyListeners with mutex lockedStephan Bergmann
...as it causes ThreadSanitizer failures during CppunitTest_basic_macros: > WARNING: ThreadSanitizer: lock-order-inversion (potential deadlock) (pid=27295) > Cycle in lock order graph: M290054517485674432 (0x000000000000) => M2405 (0x7b0c000054c0) => M290054517485674432 > > Mutex M2405 acquired here while holding mutex M290054517485674432 in main thread: > #0 pthread_mutex_lock compiler-rt/lib/tsan/../sanitizer_common/sanitizer_common_interceptors.inc:3800 (cppunittester+0x45ad87) > #1 osl_acquireMutex sal/osl/unx/mutex.cxx:97:16 (libuno_sal.so.3+0xc1ffa) > #2 osl::Mutex::acquire() include/osl/mutex.hxx:56:20 (libutllo.so+0xc06c8) > #3 osl::Guard<osl::Mutex>::Guard(osl::Mutex&) include/osl/mutex.hxx:129:17 (libutllo.so+0xbcccf) > #4 SvtSysLocaleOptions::SvtSysLocaleOptions() unotools/source/config/syslocaleoptions.cxx:504:16 (libutllo.so+0x21a4cd) > #5 SvNumberFormatterRegistry_Impl::SvNumberFormatterRegistry_Impl() svl/source/numbers/zforlist.cxx:184:33 (libsvllo.so+0x3da143) > #6 SvNumberFormatter::GetFormatterRegistry() svl/source/numbers/zforlist.cxx:368:34 (libsvllo.so+0x3e0a70) > #7 SvNumberFormatter::ImpConstruct(o3tl::strong_int<unsigned short, LanguageTypeTag>) svl/source/numbers/zforlist.cxx:322:5 (libsvllo.so+0x3dc328) > #8 SvNumberFormatter::SvNumberFormatter(com::sun::star::uno::Reference<com::sun::star::uno::XComponentContext> const&, o3tl::strong_int<unsigned short, LanguageTypeTag>) svl/source/numbers/zforlist.cxx:263:5 (libsvllo.so+0x3dbcb9) > #9 SbiScanner::NextSym() basic/source/comp/scanner.cxx:563:31 (libsblo.so+0x267d29) > #10 SbiTokenizer::Next() basic/source/comp/token.cxx:327:10 (libsblo.so+0x2771b8) > #11 SbModule::SetSource32(rtl::OUString const&) basic/source/classes/sbxmod.cxx:912:26 (libsblo.so+0x203ac8) > #12 StarBASIC::MakeModule(rtl::OUString const&, com::sun::star::script::ModuleInfo const&, rtl::OUString const&) basic/source/classes/sb.cxx:1065:8 (libsblo.so+0x16559a) > #13 StarBASIC::MakeModule(rtl::OUString const&, rtl::OUString const&) basic/source/classes/sb.cxx:1037:12 (libsblo.so+0x164fdc) > #14 MacroSnippet::MakeModule(rtl::OUString const&) basic/qa/cppunit/basictest.cxx:29:22 (libtest_basic_macros.so+0xa7ac) > #15 MacroSnippet::LoadSourceFromFile(rtl::OUString const&) basic/qa/cppunit/basictest.cxx:72:5 (libtest_basic_macros.so+0xb240) > #16 (anonymous namespace)::Coverage::run_test(rtl::OUString const&) basic/qa/cppunit/basic_coverage.cxx:75:15 (libtest_basic_macros.so+0x113d9) > #17 (anonymous namespace)::Coverage::process_directory(rtl::OUString const&) basic/qa/cppunit/basic_coverage.cxx:126:17 (libtest_basic_macros.so+0x10f46) > #18 (anonymous namespace)::Coverage::Coverage_Iterator() basic/qa/cppunit/basic_coverage.cxx:141:5 (libtest_basic_macros.so+0x1066e) > #19 void std::__invoke_impl<void, void ((anonymous namespace)::Coverage::* const&)(), (anonymous namespace)::Coverage*&>(std::__invoke_memfun_deref, void ((anonymous namespace)::Coverage::* const&)(), (anonymous namespace)::Coverage*&) /usr/lib/gcc/x86_64-redhat-linux/6.4.1/../../../../include/c++/6.4.1/functional:227:14 (libtest_basic_macros.so+0x12ffe) > #20 std::result_of<void ((anonymous namespace)::Coverage::* const&((anonymous namespace)::Coverage*&))()>::type std::__invoke<void ((anonymous namespace)::Coverage::* const&)(), (anonymous namespace)::Coverage*&>(void ((anonymous namespace)::Coverage::* const&)(), (anonymous namespace)::Coverage*&) /usr/lib/gcc/x86_64-redhat-linux/6.4.1/../../../../include/c++/6.4.1/functional:250:14 (libtest_basic_macros.so+0x12eed) > #21 _ZNKSt12_Mem_fn_baseIMN12_GLOBAL__N_18CoverageEFvvELb1EEclIJRPS1_EEEDTclsr3stdE8__invokedtdefpT6_M_pmfspclsr3stdE7forwardIT_Efp_EEEDpOS8_ /usr/lib/gcc/x86_64-redhat-linux/6.4.1/../../../../include/c++/6.4.1/functional:604:11 (libtest_basic_macros.so+0x12dcb) > #22 void std::_Bind<std::_Mem_fn<void ((anonymous namespace)::Coverage::*)()> ((anonymous namespace)::Coverage*)>::__call<void, , 0ul>(std::tuple<>&&, std::_Index_tuple<0ul>) /usr/lib/gcc/x86_64-redhat-linux/6.4.1/../../../../include/c++/6.4.1/functional:933:11 (libtest_basic_macros.so+0x12d3b) > #23 void std::_Bind<std::_Mem_fn<void ((anonymous namespace)::Coverage::*)()> ((anonymous namespace)::Coverage*)>::operator()<, void>() /usr/lib/gcc/x86_64-redhat-linux/6.4.1/../../../../include/c++/6.4.1/functional:991:17 (libtest_basic_macros.so+0x12c46) > #24 std::_Function_handler<void (), std::_Bind<std::_Mem_fn<void ((anonymous namespace)::Coverage::*)()> ((anonymous namespace)::Coverage*)> >::_M_invoke(std::_Any_data const&) /usr/lib/gcc/x86_64-redhat-linux/6.4.1/../../../../include/c++/6.4.1/functional:1731:2 (libtest_basic_macros.so+0x1260a) > #25 std::function<void ()>::operator()() const /usr/lib/gcc/x86_64-redhat-linux/6.4.1/../../../../include/c++/6.4.1/functional:2127:14 (libtest_basic_macros.so+0x1a6be) > #26 CppUnit::TestCaller<(anonymous namespace)::Coverage>::runTest() workdir/UnpackedTarball/cppunit/include/cppunit/TestCaller.h:175:7 (libtest_basic_macros.so+0x11dac) > #27 CppUnit::TestCaseMethodFunctor::operator()() const workdir/UnpackedTarball/cppunit/src/cppunit/TestCase.cpp:32:5 (libcppunit-1.14.so.0+0xd61d2) > #28 (anonymous namespace)::Protector::protect(CppUnit::Functor const&, CppUnit::ProtectorContext const&) test/source/vclbootstrapprotector.cxx:39:14 (libvclbootstrapprotector.so+0x1114) > #29 CppUnit::ProtectorChain::ProtectFunctor::operator()() const workdir/UnpackedTarball/cppunit/src/cppunit/ProtectorChain.cpp:20:25 (libcppunit-1.14.so.0+0xc7614) > #30 (anonymous namespace)::Prot::protect(CppUnit::Functor const&, CppUnit::ProtectorContext const&) unotest/source/cpp/unobootstrapprotector/unobootstrapprotector.cxx:89:12 (unobootstrapprotector.so+0x2204) > #31 CppUnit::ProtectorChain::ProtectFunctor::operator()() const workdir/UnpackedTarball/cppunit/src/cppunit/ProtectorChain.cpp:20:25 (libcppunit-1.14.so.0+0xc7614) > #32 (anonymous namespace)::Prot::protect(CppUnit::Functor const&, CppUnit::ProtectorContext const&) unotest/source/cpp/unoexceptionprotector/unoexceptionprotector.cxx:63:16 (unoexceptionprotector.so+0x23e9) > #33 CppUnit::ProtectorChain::ProtectFunctor::operator()() const workdir/UnpackedTarball/cppunit/src/cppunit/ProtectorChain.cpp:20:25 (libcppunit-1.14.so.0+0xc7614) > #34 CppUnit::DefaultProtector::protect(CppUnit::Functor const&, CppUnit::ProtectorContext const&) workdir/UnpackedTarball/cppunit/src/cppunit/DefaultProtector.cpp:15:12 (libcppunit-1.14.so.0+0xa57ad) > #35 CppUnit::ProtectorChain::ProtectFunctor::operator()() const workdir/UnpackedTarball/cppunit/src/cppunit/ProtectorChain.cpp:20:25 (libcppunit-1.14.so.0+0xc7614) > #36 CppUnit::ProtectorChain::protect(CppUnit::Functor const&, CppUnit::ProtectorContext const&) workdir/UnpackedTarball/cppunit/src/cppunit/ProtectorChain.cpp:86:18 (libcppunit-1.14.so.0+0xc4a96) > #37 CppUnit::TestResult::protect(CppUnit::Functor const&, CppUnit::Test*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) workdir/UnpackedTarball/cppunit/src/cppunit/TestResult.cpp:182:28 (libcppunit-1.14.so.0+0xf4714) > #38 CppUnit::TestCase::run(CppUnit::TestResult*) workdir/UnpackedTarball/cppunit/src/cppunit/TestCase.cpp:91:13 (libcppunit-1.14.so.0+0xd5750) > #39 CppUnit::TestComposite::doRunChildTests(CppUnit::TestResult*) workdir/UnpackedTarball/cppunit/src/cppunit/TestComposite.cpp:64:30 (libcppunit-1.14.so.0+0xd6d5a) > #40 CppUnit::TestComposite::run(CppUnit::TestResult*) workdir/UnpackedTarball/cppunit/src/cppunit/TestComposite.cpp:23:3 (libcppunit-1.14.so.0+0xd6a2e) > #41 CppUnit::TestComposite::doRunChildTests(CppUnit::TestResult*) workdir/UnpackedTarball/cppunit/src/cppunit/TestComposite.cpp:64:30 (libcppunit-1.14.so.0+0xd6d5a) > #42 CppUnit::TestComposite::run(CppUnit::TestResult*) workdir/UnpackedTarball/cppunit/src/cppunit/TestComposite.cpp:23:3 (libcppunit-1.14.so.0+0xd6a2e) > #43 CppUnit::TestRunner::WrappingSuite::run(CppUnit::TestResult*) workdir/UnpackedTarball/cppunit/src/cppunit/TestRunner.cpp:47:27 (libcppunit-1.14.so.0+0x10282c) > #44 CppUnit::TestResult::runTest(CppUnit::Test*) workdir/UnpackedTarball/cppunit/src/cppunit/TestResult.cpp:149:9 (libcppunit-1.14.so.0+0xf4223) > #45 CppUnit::TestRunner::run(CppUnit::TestResult&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) workdir/UnpackedTarball/cppunit/src/cppunit/TestRunner.cpp:96:14 (libcppunit-1.14.so.0+0x102c76) > #46 (anonymous namespace)::ProtectedFixtureFunctor::run() const sal/cppunittester/cppunittester.cxx:316:20 (cppunittester+0x4bd528) > #47 sal_main() sal/cppunittester/cppunittester.cxx:466:20 (cppunittester+0x4bc15e) > #48 main sal/cppunittester/cppunittester.cxx:373:1 (cppunittester+0x4bb9d5) > > Mutex M290054517485674432 previously acquired by the same thread here: > #0 pthread_mutex_lock compiler-rt/lib/tsan/../sanitizer_common/sanitizer_common_interceptors.inc:3800 (cppunittester+0x45ad87) > #1 osl_acquireMutex sal/osl/unx/mutex.cxx:97:16 (libuno_sal.so.3+0xc1ffa) > #2 osl::Mutex::acquire() include/osl/mutex.hxx:56:20 (libsvllo.so+0xeced8) > #3 osl::Guard<osl::Mutex>::Guard(osl::Mutex&) include/osl/mutex.hxx:129:17 (libsvllo.so+0xf3b4f) > #4 SvNumberFormatter::ImpConstruct(o3tl::strong_int<unsigned short, LanguageTypeTag>) svl/source/numbers/zforlist.cxx:321:23 (libsvllo.so+0x3dc31e) > #5 SvNumberFormatter::SvNumberFormatter(com::sun::star::uno::Reference<com::sun::star::uno::XComponentContext> const&, o3tl::strong_int<unsigned short, LanguageTypeTag>) svl/source/numbers/zforlist.cxx:263:5 (libsvllo.so+0x3dbcb9) > #6 SbiScanner::NextSym() basic/source/comp/scanner.cxx:563:31 (libsblo.so+0x267d29) > #7 SbiTokenizer::Next() basic/source/comp/token.cxx:327:10 (libsblo.so+0x2771b8) > #8 SbModule::SetSource32(rtl::OUString const&) basic/source/classes/sbxmod.cxx:912:26 (libsblo.so+0x203ac8) > #9 StarBASIC::MakeModule(rtl::OUString const&, com::sun::star::script::ModuleInfo const&, rtl::OUString const&) basic/source/classes/sb.cxx:1065:8 (libsblo.so+0x16559a) > #10 StarBASIC::MakeModule(rtl::OUString const&, rtl::OUString const&) basic/source/classes/sb.cxx:1037:12 (libsblo.so+0x164fdc) > #11 MacroSnippet::MakeModule(rtl::OUString const&) basic/qa/cppunit/basictest.cxx:29:22 (libtest_basic_macros.so+0xa7ac) > #12 MacroSnippet::LoadSourceFromFile(rtl::OUString const&) basic/qa/cppunit/basictest.cxx:72:5 (libtest_basic_macros.so+0xb240) > #13 (anonymous namespace)::Coverage::run_test(rtl::OUString const&) basic/qa/cppunit/basic_coverage.cxx:75:15 (libtest_basic_macros.so+0x113d9) > #14 (anonymous namespace)::Coverage::process_directory(rtl::OUString const&) basic/qa/cppunit/basic_coverage.cxx:126:17 (libtest_basic_macros.so+0x10f46) > #15 (anonymous namespace)::Coverage::Coverage_Iterator() basic/qa/cppunit/basic_coverage.cxx:141:5 (libtest_basic_macros.so+0x1066e) > #16 void std::__invoke_impl<void, void ((anonymous namespace)::Coverage::* const&)(), (anonymous namespace)::Coverage*&>(std::__invoke_memfun_deref, void ((anonymous namespace)::Coverage::* const&)(), (anonymous namespace)::Coverage*&) /usr/lib/gcc/x86_64-redhat-linux/6.4.1/../../../../include/c++/6.4.1/functional:227:14 (libtest_basic_macros.so+0x12ffe) > #17 std::result_of<void ((anonymous namespace)::Coverage::* const&((anonymous namespace)::Coverage*&))()>::type std::__invoke<void ((anonymous namespace)::Coverage::* const&)(), (anonymous namespace)::Coverage*&>(void ((anonymous namespace)::Coverage::* const&)(), (anonymous namespace)::Coverage*&) /usr/lib/gcc/x86_64-redhat-linux/6.4.1/../../../../include/c++/6.4.1/functional:250:14 (libtest_basic_macros.so+0x12eed) > #18 _ZNKSt12_Mem_fn_baseIMN12_GLOBAL__N_18CoverageEFvvELb1EEclIJRPS1_EEEDTclsr3stdE8__invokedtdefpT6_M_pmfspclsr3stdE7forwardIT_Efp_EEEDpOS8_ /usr/lib/gcc/x86_64-redhat-linux/6.4.1/../../../../include/c++/6.4.1/functional:604:11 (libtest_basic_macros.so+0x12dcb) > #19 void std::_Bind<std::_Mem_fn<void ((anonymous namespace)::Coverage::*)()> ((anonymous namespace)::Coverage*)>::__call<void, , 0ul>(std::tuple<>&&, std::_Index_tuple<0ul>) /usr/lib/gcc/x86_64-redhat-linux/6.4.1/../../../../include/c++/6.4.1/functional:933:11 (libtest_basic_macros.so+0x12d3b) > #20 void std::_Bind<std::_Mem_fn<void ((anonymous namespace)::Coverage::*)()> ((anonymous namespace)::Coverage*)>::operator()<, void>() /usr/lib/gcc/x86_64-redhat-linux/6.4.1/../../../../include/c++/6.4.1/functional:991:17 (libtest_basic_macros.so+0x12c46) > #21 std::_Function_handler<void (), std::_Bind<std::_Mem_fn<void ((anonymous namespace)::Coverage::*)()> ((anonymous namespace)::Coverage*)> >::_M_invoke(std::_Any_data const&) /usr/lib/gcc/x86_64-redhat-linux/6.4.1/../../../../include/c++/6.4.1/functional:1731:2 (libtest_basic_macros.so+0x1260a) > #22 std::function<void ()>::operator()() const /usr/lib/gcc/x86_64-redhat-linux/6.4.1/../../../../include/c++/6.4.1/functional:2127:14 (libtest_basic_macros.so+0x1a6be) > #23 CppUnit::TestCaller<(anonymous namespace)::Coverage>::runTest() workdir/UnpackedTarball/cppunit/include/cppunit/TestCaller.h:175:7 (libtest_basic_macros.so+0x11dac) > #24 CppUnit::TestCaseMethodFunctor::operator()() const workdir/UnpackedTarball/cppunit/src/cppunit/TestCase.cpp:32:5 (libcppunit-1.14.so.0+0xd61d2) > #25 (anonymous namespace)::Protector::protect(CppUnit::Functor const&, CppUnit::ProtectorContext const&) test/source/vclbootstrapprotector.cxx:39:14 (libvclbootstrapprotector.so+0x1114) > #26 CppUnit::ProtectorChain::ProtectFunctor::operator()() const workdir/UnpackedTarball/cppunit/src/cppunit/ProtectorChain.cpp:20:25 (libcppunit-1.14.so.0+0xc7614) > #27 (anonymous namespace)::Prot::protect(CppUnit::Functor const&, CppUnit::ProtectorContext const&) unotest/source/cpp/unobootstrapprotector/unobootstrapprotector.cxx:89:12 (unobootstrapprotector.so+0x2204) > #28 CppUnit::ProtectorChain::ProtectFunctor::operator()() const workdir/UnpackedTarball/cppunit/src/cppunit/ProtectorChain.cpp:20:25 (libcppunit-1.14.so.0+0xc7614) > #29 (anonymous namespace)::Prot::protect(CppUnit::Functor const&, CppUnit::ProtectorContext const&) unotest/source/cpp/unoexceptionprotector/unoexceptionprotector.cxx:63:16 (unoexceptionprotector.so+0x23e9) > #30 CppUnit::ProtectorChain::ProtectFunctor::operator()() const workdir/UnpackedTarball/cppunit/src/cppunit/ProtectorChain.cpp:20:25 (libcppunit-1.14.so.0+0xc7614) > #31 CppUnit::DefaultProtector::protect(CppUnit::Functor const&, CppUnit::ProtectorContext const&) workdir/UnpackedTarball/cppunit/src/cppunit/DefaultProtector.cpp:15:12 (libcppunit-1.14.so.0+0xa57ad) > #32 CppUnit::ProtectorChain::ProtectFunctor::operator()() const workdir/UnpackedTarball/cppunit/src/cppunit/ProtectorChain.cpp:20:25 (libcppunit-1.14.so.0+0xc7614) > #33 CppUnit::ProtectorChain::protect(CppUnit::Functor const&, CppUnit::ProtectorContext const&) workdir/UnpackedTarball/cppunit/src/cppunit/ProtectorChain.cpp:86:18 (libcppunit-1.14.so.0+0xc4a96) > #34 CppUnit::TestResult::protect(CppUnit::Functor const&, CppUnit::Test*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) workdir/UnpackedTarball/cppunit/src/cppunit/TestResult.cpp:182:28 (libcppunit-1.14.so.0+0xf4714) > #35 CppUnit::TestCase::run(CppUnit::TestResult*) workdir/UnpackedTarball/cppunit/src/cppunit/TestCase.cpp:91:13 (libcppunit-1.14.so.0+0xd5750) > #36 CppUnit::TestComposite::doRunChildTests(CppUnit::TestResult*) workdir/UnpackedTarball/cppunit/src/cppunit/TestComposite.cpp:64:30 (libcppunit-1.14.so.0+0xd6d5a) > #37 CppUnit::TestComposite::run(CppUnit::TestResult*) workdir/UnpackedTarball/cppunit/src/cppunit/TestComposite.cpp:23:3 (libcppunit-1.14.so.0+0xd6a2e) > #38 CppUnit::TestComposite::doRunChildTests(CppUnit::TestResult*) workdir/UnpackedTarball/cppunit/src/cppunit/TestComposite.cpp:64:30 (libcppunit-1.14.so.0+0xd6d5a) > #39 CppUnit::TestComposite::run(CppUnit::TestResult*) workdir/UnpackedTarball/cppunit/src/cppunit/TestComposite.cpp:23:3 (libcppunit-1.14.so.0+0xd6a2e) > #40 CppUnit::TestRunner::WrappingSuite::run(CppUnit::TestResult*) workdir/UnpackedTarball/cppunit/src/cppunit/TestRunner.cpp:47:27 (libcppunit-1.14.so.0+0x10282c) > #41 CppUnit::TestResult::runTest(CppUnit::Test*) workdir/UnpackedTarball/cppunit/src/cppunit/TestResult.cpp:149:9 (libcppunit-1.14.so.0+0xf4223) > #42 CppUnit::TestRunner::run(CppUnit::TestResult&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) workdir/UnpackedTarball/cppunit/src/cppunit/TestRunner.cpp:96:14 (libcppunit-1.14.so.0+0x102c76) > #43 (anonymous namespace)::ProtectedFixtureFunctor::run() const sal/cppunittester/cppunittester.cxx:316:20 (cppunittester+0x4bd528) > #44 sal_main() sal/cppunittester/cppunittester.cxx:466:20 (cppunittester+0x4bc15e) > #45 main sal/cppunittester/cppunittester.cxx:373:1 (cppunittester+0x4bb9d5) > > Mutex M290054517485674432 acquired here while holding mutex M2405 in main thread: > #0 pthread_mutex_lock compiler-rt/lib/tsan/../sanitizer_common/sanitizer_common_interceptors.inc:3800 (cppunittester+0x45ad87) > #1 osl_acquireMutex sal/osl/unx/mutex.cxx:97:16 (libuno_sal.so.3+0xc1ffa) > #2 osl::Mutex::acquire() include/osl/mutex.hxx:56:20 (libsvllo.so+0xeced8) > #3 osl::Guard<osl::Mutex>::Guard(osl::Mutex&) include/osl/mutex.hxx:129:17 (libsvllo.so+0xf3b4f) > #4 SvNumberFormatter::CurrencyChangeLink(SvNumberFormatter*, LinkParamNone*) svl/source/numbers/zforlist.cxx:3320:23 (libsvllo.so+0x3f7282) > #5 SvNumberFormatter::LinkStubCurrencyChangeLink(void*, LinkParamNone*) svl/source/numbers/zforlist.cxx:3318:1 (libsvllo.so+0x3f71f8) > #6 Link<LinkParamNone*, void>::Call(LinkParamNone*) const include/tools/link.hxx:84:45 (libutllo.so+0x21cfa0) > #7 SvtSysLocaleOptions::ConfigurationChanged(utl::ConfigurationBroadcaster*, ConfigurationHints) unotools/source/config/syslocaleoptions.cxx:674:15 (libutllo.so+0x21c06f) > #8 non-virtual thunk to SvtSysLocaleOptions::ConfigurationChanged(utl::ConfigurationBroadcaster*, ConfigurationHints) unotools/source/config/syslocaleoptions.cxx (libutllo.so+0x21c118) > #9 utl::ConfigurationBroadcaster::NotifyListeners(ConfigurationHints) unotools/source/config/options.cxx:78:33 (libutllo.so+0x1cd63f) > #10 SvtSysLocaleOptions_Impl::SetLocaleString(rtl::OUString const&) unotools/source/config/syslocaleoptions.cxx:390:9 (libutllo.so+0x21935d) > #11 SvtSysLocaleOptions::SetLocaleConfigString(rtl::OUString const&) unotools/source/config/syslocaleoptions.cxx:555:12 (libutllo.so+0x21adcc) > #12 (anonymous namespace)::Coverage::Coverage_Iterator() basic/qa/cppunit/basic_coverage.cxx:156:31 (libtest_basic_macros.so+0x108e4) > #13 void std::__invoke_impl<void, void ((anonymous namespace)::Coverage::* const&)(), (anonymous namespace)::Coverage*&>(std::__invoke_memfun_deref, void ((anonymous namespace)::Coverage::* const&)(), (anonymous namespace)::Coverage*&) /usr/lib/gcc/x86_64-redhat-linux/6.4.1/../../../../include/c++/6.4.1/functional:227:14 (libtest_basic_macros.so+0x12ffe) > #14 std::result_of<void ((anonymous namespace)::Coverage::* const&((anonymous namespace)::Coverage*&))()>::type std::__invoke<void ((anonymous namespace)::Coverage::* const&)(), (anonymous namespace)::Coverage*&>(void ((anonymous namespace)::Coverage::* const&)(), (anonymous namespace)::Coverage*&) /usr/lib/gcc/x86_64-redhat-linux/6.4.1/../../../../include/c++/6.4.1/functional:250:14 (libtest_basic_macros.so+0x12eed) > #15 _ZNKSt12_Mem_fn_baseIMN12_GLOBAL__N_18CoverageEFvvELb1EEclIJRPS1_EEEDTclsr3stdE8__invokedtdefpT6_M_pmfspclsr3stdE7forwardIT_Efp_EEEDpOS8_ /usr/lib/gcc/x86_64-redhat-linux/6.4.1/../../../../include/c++/6.4.1/functional:604:11 (libtest_basic_macros.so+0x12dcb) > #16 void std::_Bind<std::_Mem_fn<void ((anonymous namespace)::Coverage::*)()> ((anonymous namespace)::Coverage*)>::__call<void, , 0ul>(std::tuple<>&&, std::_Index_tuple<0ul>) /usr/lib/gcc/x86_64-redhat-linux/6.4.1/../../../../include/c++/6.4.1/functional:933:11 (libtest_basic_macros.so+0x12d3b) > #17 void std::_Bind<std::_Mem_fn<void ((anonymous namespace)::Coverage::*)()> ((anonymous namespace)::Coverage*)>::operator()<, void>() /usr/lib/gcc/x86_64-redhat-linux/6.4.1/../../../../include/c++/6.4.1/functional:991:17 (libtest_basic_macros.so+0x12c46) > #18 std::_Function_handler<void (), std::_Bind<std::_Mem_fn<void ((anonymous namespace)::Coverage::*)()> ((anonymous namespace)::Coverage*)> >::_M_invoke(std::_Any_data const&) /usr/lib/gcc/x86_64-redhat-linux/6.4.1/../../../../include/c++/6.4.1/functional:1731:2 (libtest_basic_macros.so+0x1260a) > #19 std::function<void ()>::operator()() const /usr/lib/gcc/x86_64-redhat-linux/6.4.1/../../../../include/c++/6.4.1/functional:2127:14 (libtest_basic_macros.so+0x1a6be) > #20 CppUnit::TestCaller<(anonymous namespace)::Coverage>::runTest() workdir/UnpackedTarball/cppunit/include/cppunit/TestCaller.h:175:7 (libtest_basic_macros.so+0x11dac) > #21 CppUnit::TestCaseMethodFunctor::operator()() const workdir/UnpackedTarball/cppunit/src/cppunit/TestCase.cpp:32:5 (libcppunit-1.14.so.0+0xd61d2) > #22 (anonymous namespace)::Protector::protect(CppUnit::Functor const&, CppUnit::ProtectorContext const&) test/source/vclbootstrapprotector.cxx:39:14 (libvclbootstrapprotector.so+0x1114) > #23 CppUnit::ProtectorChain::ProtectFunctor::operator()() const workdir/UnpackedTarball/cppunit/src/cppunit/ProtectorChain.cpp:20:25 (libcppunit-1.14.so.0+0xc7614) > #24 (anonymous namespace)::Prot::protect(CppUnit::Functor const&, CppUnit::ProtectorContext const&) unotest/source/cpp/unobootstrapprotector/unobootstrapprotector.cxx:89:12 (unobootstrapprotector.so+0x2204) > #25 CppUnit::ProtectorChain::ProtectFunctor::operator()() const workdir/UnpackedTarball/cppunit/src/cppunit/ProtectorChain.cpp:20:25 (libcppunit-1.14.so.0+0xc7614) > #26 (anonymous namespace)::Prot::protect(CppUnit::Functor const&, CppUnit::ProtectorContext const&) unotest/source/cpp/unoexceptionprotector/unoexceptionprotector.cxx:63:16 (unoexceptionprotector.so+0x23e9) > #27 CppUnit::ProtectorChain::ProtectFunctor::operator()() const workdir/UnpackedTarball/cppunit/src/cppunit/ProtectorChain.cpp:20:25 (libcppunit-1.14.so.0+0xc7614) > #28 CppUnit::DefaultProtector::protect(CppUnit::Functor const&, CppUnit::ProtectorContext const&) workdir/UnpackedTarball/cppunit/src/cppunit/DefaultProtector.cpp:15:12 (libcppunit-1.14.so.0+0xa57ad) > #29 CppUnit::ProtectorChain::ProtectFunctor::operator()() const workdir/UnpackedTarball/cppunit/src/cppunit/ProtectorChain.cpp:20:25 (libcppunit-1.14.so.0+0xc7614) > #30 CppUnit::ProtectorChain::protect(CppUnit::Functor const&, CppUnit::ProtectorContext const&) workdir/UnpackedTarball/cppunit/src/cppunit/ProtectorChain.cpp:86:18 (libcppunit-1.14.so.0+0xc4a96) > #31 CppUnit::TestResult::protect(CppUnit::Functor const&, CppUnit::Test*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) workdir/UnpackedTarball/cppunit/src/cppunit/TestResult.cpp:182:28 (libcppunit-1.14.so.0+0xf4714) > #32 CppUnit::TestCase::run(CppUnit::TestResult*) workdir/UnpackedTarball/cppunit/src/cppunit/TestCase.cpp:91:13 (libcppunit-1.14.so.0+0xd5750) > #33 CppUnit::TestComposite::doRunChildTests(CppUnit::TestResult*) workdir/UnpackedTarball/cppunit/src/cppunit/TestComposite.cpp:64:30 (libcppunit-1.14.so.0+0xd6d5a) > #34 CppUnit::TestComposite::run(CppUnit::TestResult*) workdir/UnpackedTarball/cppunit/src/cppunit/TestComposite.cpp:23:3 (libcppunit-1.14.so.0+0xd6a2e) > #35 CppUnit::TestComposite::doRunChildTests(CppUnit::TestResult*) workdir/UnpackedTarball/cppunit/src/cppunit/TestComposite.cpp:64:30 (libcppunit-1.14.so.0+0xd6d5a) > #36 CppUnit::TestComposite::run(CppUnit::TestResult*) workdir/UnpackedTarball/cppunit/src/cppunit/TestComposite.cpp:23:3 (libcppunit-1.14.so.0+0xd6a2e) > #37 CppUnit::TestRunner::WrappingSuite::run(CppUnit::TestResult*) workdir/UnpackedTarball/cppunit/src/cppunit/TestRunner.cpp:47:27 (libcppunit-1.14.so.0+0x10282c) > #38 CppUnit::TestResult::runTest(CppUnit::Test*) workdir/UnpackedTarball/cppunit/src/cppunit/TestResult.cpp:149:9 (libcppunit-1.14.so.0+0xf4223) > #39 CppUnit::TestRunner::run(CppUnit::TestResult&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) workdir/UnpackedTarball/cppunit/src/cppunit/TestRunner.cpp:96:14 (libcppunit-1.14.so.0+0x102c76) > #40 (anonymous namespace)::ProtectedFixtureFunctor::run() const sal/cppunittester/cppunittester.cxx:316:20 (cppunittester+0x4bd528) > #41 sal_main() sal/cppunittester/cppunittester.cxx:466:20 (cppunittester+0x4bc15e) > #42 main sal/cppunittester/cppunittester.cxx:373:1 (cppunittester+0x4bb9d5) > > Mutex M2405 previously acquired by the same thread here: > #0 pthread_mutex_lock compiler-rt/lib/tsan/../sanitizer_common/sanitizer_common_interceptors.inc:3800 (cppunittester+0x45ad87) > #1 osl_acquireMutex sal/osl/unx/mutex.cxx:97:16 (libuno_sal.so.3+0xc1ffa) > #2 osl::Mutex::acquire() include/osl/mutex.hxx:56:20 (libutllo.so+0xc06c8) > #3 osl::Guard<osl::Mutex>::Guard(osl::Mutex&) include/osl/mutex.hxx:129:17 (libutllo.so+0xbcccf) > #4 SvtSysLocaleOptions::SetLocaleConfigString(rtl::OUString const&) unotools/source/config/syslocaleoptions.cxx:554:16 (libutllo.so+0x21adab) > #5 (anonymous namespace)::Coverage::Coverage_Iterator() basic/qa/cppunit/basic_coverage.cxx:156:31 (libtest_basic_macros.so+0x108e4) > #6 void std::__invoke_impl<void, void ((anonymous namespace)::Coverage::* const&)(), (anonymous namespace)::Coverage*&>(std::__invoke_memfun_deref, void ((anonymous namespace)::Coverage::* const&)(), (anonymous namespace)::Coverage*&) /usr/lib/gcc/x86_64-redhat-linux/6.4.1/../../../../include/c++/6.4.1/functional:227:14 (libtest_basic_macros.so+0x12ffe) > #7 std::result_of<void ((anonymous namespace)::Coverage::* const&((anonymous namespace)::Coverage*&))()>::type std::__invoke<void ((anonymous namespace)::Coverage::* const&)(), (anonymous namespace)::Coverage*&>(void ((anonymous namespace)::Coverage::* const&)(), (anonymous namespace)::Coverage*&) /usr/lib/gcc/x86_64-redhat-linux/6.4.1/../../../../include/c++/6.4.1/functional:250:14 (libtest_basic_macros.so+0x12eed) > #8 _ZNKSt12_Mem_fn_baseIMN12_GLOBAL__N_18CoverageEFvvELb1EEclIJRPS1_EEEDTclsr3stdE8__invokedtdefpT6_M_pmfspclsr3stdE7forwardIT_Efp_EEEDpOS8_ /usr/lib/gcc/x86_64-redhat-linux/6.4.1/../../../../include/c++/6.4.1/functional:604:11 (libtest_basic_macros.so+0x12dcb) > #9 void std::_Bind<std::_Mem_fn<void ((anonymous namespace)::Coverage::*)()> ((anonymous namespace)::Coverage*)>::__call<void, , 0ul>(std::tuple<>&&, std::_Index_tuple<0ul>) /usr/lib/gcc/x86_64-redhat-linux/6.4.1/../../../../include/c++/6.4.1/functional:933:11 (libtest_basic_macros.so+0x12d3b) > #10 void std::_Bind<std::_Mem_fn<void ((anonymous namespace)::Coverage::*)()> ((anonymous namespace)::Coverage*)>::operator()<, void>() /usr/lib/gcc/x86_64-redhat-linux/6.4.1/../../../../include/c++/6.4.1/functional:991:17 (libtest_basic_macros.so+0x12c46) > #11 std::_Function_handler<void (), std::_Bind<std::_Mem_fn<void ((anonymous namespace)::Coverage::*)()> ((anonymous namespace)::Coverage*)> >::_M_invoke(std::_Any_data const&) /usr/lib/gcc/x86_64-redhat-linux/6.4.1/../../../../include/c++/6.4.1/functional:1731:2 (libtest_basic_macros.so+0x1260a) > #12 std::function<void ()>::operator()() const /usr/lib/gcc/x86_64-redhat-linux/6.4.1/../../../../include/c++/6.4.1/functional:2127:14 (libtest_basic_macros.so+0x1a6be) > #13 CppUnit::TestCaller<(anonymous namespace)::Coverage>::runTest() workdir/UnpackedTarball/cppunit/include/cppunit/TestCaller.h:175:7 (libtest_basic_macros.so+0x11dac) > #14 CppUnit::TestCaseMethodFunctor::operator()() const workdir/UnpackedTarball/cppunit/src/cppunit/TestCase.cpp:32:5 (libcppunit-1.14.so.0+0xd61d2) > #15 (anonymous namespace)::Protector::protect(CppUnit::Functor const&, CppUnit::ProtectorContext const&) test/source/vclbootstrapprotector.cxx:39:14 (libvclbootstrapprotector.so+0x1114) > #16 CppUnit::ProtectorChain::ProtectFunctor::operator()() const workdir/UnpackedTarball/cppunit/src/cppunit/ProtectorChain.cpp:20:25 (libcppunit-1.14.so.0+0xc7614) > #17 (anonymous namespace)::Prot::protect(CppUnit::Functor const&, CppUnit::ProtectorContext const&) unotest/source/cpp/unobootstrapprotector/unobootstrapprotector.cxx:89:12 (unobootstrapprotector.so+0x2204) > #18 CppUnit::ProtectorChain::ProtectFunctor::operator()() const workdir/UnpackedTarball/cppunit/src/cppunit/ProtectorChain.cpp:20:25 (libcppunit-1.14.so.0+0xc7614) > #19 (anonymous namespace)::Prot::protect(CppUnit::Functor const&, CppUnit::ProtectorContext const&) unotest/source/cpp/unoexceptionprotector/unoexceptionprotector.cxx:63:16 (unoexceptionprotector.so+0x23e9) > #20 CppUnit::ProtectorChain::ProtectFunctor::operator()() const workdir/UnpackedTarball/cppunit/src/cppunit/ProtectorChain.cpp:20:25 (libcppunit-1.14.so.0+0xc7614) > #21 CppUnit::DefaultProtector::protect(CppUnit::Functor const&, CppUnit::ProtectorContext const&) workdir/UnpackedTarball/cppunit/src/cppunit/DefaultProtector.cpp:15:12 (libcppunit-1.14.so.0+0xa57ad) > #22 CppUnit::ProtectorChain::ProtectFunctor::operator()() const workdir/UnpackedTarball/cppunit/src/cppunit/ProtectorChain.cpp:20:25 (libcppunit-1.14.so.0+0xc7614) > #23 CppUnit::ProtectorChain::protect(CppUnit::Functor const&, CppUnit::ProtectorContext const&) workdir/UnpackedTarball/cppunit/src/cppunit/ProtectorChain.cpp:86:18 (libcppunit-1.14.so.0+0xc4a96) > #24 CppUnit::TestResult::protect(CppUnit::Functor const&, CppUnit::Test*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) workdir/UnpackedTarball/cppunit/src/cppunit/TestResult.cpp:182:28 (libcppunit-1.14.so.0+0xf4714) > #25 CppUnit::TestCase::run(CppUnit::TestResult*) workdir/UnpackedTarball/cppunit/src/cppunit/TestCase.cpp:91:13 (libcppunit-1.14.so.0+0xd5750) > #26 CppUnit::TestComposite::doRunChildTests(CppUnit::TestResult*) workdir/UnpackedTarball/cppunit/src/cppunit/TestComposite.cpp:64:30 (libcppunit-1.14.so.0+0xd6d5a) > #27 CppUnit::TestComposite::run(CppUnit::TestResult*) workdir/UnpackedTarball/cppunit/src/cppunit/TestComposite.cpp:23:3 (libcppunit-1.14.so.0+0xd6a2e) > #28 CppUnit::TestComposite::doRunChildTests(CppUnit::TestResult*) workdir/UnpackedTarball/cppunit/src/cppunit/TestComposite.cpp:64:30 (libcppunit-1.14.so.0+0xd6d5a) > #29 CppUnit::TestComposite::run(CppUnit::TestResult*) workdir/UnpackedTarball/cppunit/src/cppunit/TestComposite.cpp:23:3 (libcppunit-1.14.so.0+0xd6a2e) > #30 CppUnit::TestRunner::WrappingSuite::run(CppUnit::TestResult*) workdir/UnpackedTarball/cppunit/src/cppunit/TestRunner.cpp:47:27 (libcppunit-1.14.so.0+0x10282c) > #31 CppUnit::TestResult::runTest(CppUnit::Test*) workdir/UnpackedTarball/cppunit/src/cppunit/TestResult.cpp:149:9 (libcppunit-1.14.so.0+0xf4223) > #32 CppUnit::TestRunner::run(CppUnit::TestResult&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) workdir/UnpackedTarball/cppunit/src/cppunit/TestRunner.cpp:96:14 (libcppunit-1.14.so.0+0x102c76) > #33 (anonymous namespace)::ProtectedFixtureFunctor::run() const sal/cppunittester/cppunittester.cxx:316:20 (cppunittester+0x4bd528) > #34 sal_main() sal/cppunittester/cppunittester.cxx:466:20 (cppunittester+0x4bc15e) > #35 main sal/cppunittester/cppunittester.cxx:373:1 (cppunittester+0x4bb9d5) Change-Id: I2dc13b1e8a5f58155b2df4679bd1c1d73819cb6f
2017-09-05Drop lazywrite property, which is silently ignored by configmgr anywayStephan Bergmann
...at least ever since the "new" configmgr reimplementation, 6b849a6aeeb9ea8b1e25e28d5a8be390e425f84e "#i101955# initial work in progress of a configmgr reimplementation (for now in an extra module 'configmgr2')" et al Change-Id: I43430d991647fb2e26762463d51175247db0604b
2017-08-25loplugin:unusedmethodsNoel Grandin
Change-Id: Iaaf9092ec4d6189492906648b84494d087fed81f Reviewed-on: https://gerrit.libreoffice.org/41539 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-08-08loplugin:unusedmethodsNoel Grandin
Change-Id: Id66cf12e3a59aeed1b9a7a111b841e30b248635b Reviewed-on: https://gerrit.libreoffice.org/40876 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Jochen Nitschke <j.nitschke+logerrit@ok.de> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-08-04Add debug output operator<< for SearchParam::SearchTypeTor Lillqvist