summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2018-08-15loplugin:useuniqueptr in consumeScheduledThreadEntryNoel Grandin
Change-Id: I9c0b05081915712089d363a476d6354cfba2461d Reviewed-on: https://gerrit.libreoffice.org/59010 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-08-15loplugin:useuniqueptr pass XEditAttribute around by std::unique_ptrNoel Grandin
Change-Id: Idaf02002cecb1300a5fc3bcb0e298b11a1958bb1 Reviewed-on: https://gerrit.libreoffice.org/59008 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-08-15loplugin:returnconstant in ScDetectiveFuncNoel Grandin
Change-Id: Id6eef7772b32a93d43d0417c5b6e24d9189c4e73 Reviewed-on: https://gerrit.libreoffice.org/58955 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-08-15convert ScChangeActionCellListEntry to std::vectorNoel Grandin
no need for a linked list where each cell contains a single pointer Change-Id: I5353b178ddf3c6a69762edc23612995efd81fb41 Reviewed-on: https://gerrit.libreoffice.org/58987 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-08-15tdf#106324: Remove unnecessary test folder from LibreOfficePython frameworkTor Lillqvist
No need to distribute that, apparently. We don't ship it on Windows, either. Change-Id: I76bf77311caceccd07afb0afa2f097b63f58bf54 Reviewed-on: https://gerrit.libreoffice.org/59034 Tested-by: Jenkins Reviewed-by: Tor Lillqvist <tml@collabora.com>
2018-08-14apparmor: fix qt-related deniesVincas Dargis
Commit c86e4ad53391d17d1eb54845b5999889f7e65061 introduced qt-related rules, like linking to ~/.config/#[0-9]* files, though does not allow to write the files themselves, in result producing DENIED log entries if AppArmor profile is enabled. This is fixed by adding read-write rule for particular files. Change-Id: I6441398c4fcfbfcf59ba5f5b3178682c1e5d1cd5 Reviewed-on: https://gerrit.libreoffice.org/59007 Tested-by: Jenkins Reviewed-by: Rene Engelhard <rene@debian.org> Tested-by: Rene Engelhard <rene@debian.org>
2018-08-14Fix typosAndrea Gelmini
Change-Id: Ia717a116056bddc7968a3e451058a94cb2bbbd29 Reviewed-on: https://gerrit.libreoffice.org/59003 Reviewed-by: Jean-Pierre Ledure <jp@ledure.be> Tested-by: Jean-Pierre Ledure <jp@ledure.be> Tested-by: Jenkins
2018-08-14Resolves: tdf#117069 crash double clicking in certain chartCaolán McNamara
Change-Id: I4506a3517eff7f73cf793195e9d605d450b84fda Reviewed-on: https://gerrit.libreoffice.org/58995 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
2018-08-14help: Let's make the help urls more standard, and use ?Target=...&... form.Jan Holesovsky
Reviewed-on: https://gerrit.libreoffice.org/58863 Reviewed-by: Andras Timar <andras.timar@collabora.com> Tested-by: Andras Timar <andras.timar@collabora.com> (cherry picked from commit a7485a5db36dc8a8e61285384eed06c46e6a5b53) Change-Id: If9b7f6e50e8e668b7349dae1935ce16965ef19b0 Reviewed-on: https://gerrit.libreoffice.org/58868 Tested-by: Jenkins Reviewed-by: Olivier Hallot <olivier.hallot@libreoffice.org>
2018-08-14tdf#118825 use exportToSvgD for motion path in pptx filter.Mark Hung
Change-Id: Ie3c023b0efc4a6c5a92ffc8ba43259ff2bb7da8f Reviewed-on: https://gerrit.libreoffice.org/58849 Tested-by: Jenkins Reviewed-by: Mark Hung <marklh9@gmail.com>
2018-08-14tdf#118825 Implement OOXMLMotionPath in exportToSvgD of basegfx.Mark Hung
Powerpoint only allows M,L,C,Z,E,m,l,c,z,e , i.e. V,H,S ( and their corresponding relative command ) must not be used and ending E is mandatory. Command and space delimiters also can not be skipped. Change-Id: Icad38ec2eed3e49143eb9a03aa56cc178baae99d Reviewed-on: https://gerrit.libreoffice.org/58848 Tested-by: Jenkins Reviewed-by: Mark Hung <marklh9@gmail.com>
2018-08-14crashtesting: IsSctFrame assertCaolán McNamara
we have two asserting cases... soffice.bin --headless --convert-to pdf odt/tdf109532-2.odt soffice.bin --headless --convert-to odt odt/fdo45450-1.odt both pass after this Change-Id: I24a9bdc5ab19f678dc611f78ed84347789915cc5 Reviewed-on: https://gerrit.libreoffice.org/58939 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
2018-08-14Update git submodulesJan Holesovsky
* Update helpcontent2 from branch 'master' - Let's make the help urls more standard, and use ?Target=...&... form. Change-Id: Ic2568c769ab11e3622f71b92a46fb124012a3c90 Reviewed-on: https://gerrit.libreoffice.org/58865 Tested-by: Jenkins Reviewed-by: Olivier Hallot <olivier.hallot@libreoffice.org>
2018-08-14tdf#119234 OOXML Shapes from Word fail to renderNoel Grandin
regression from commit 65e4a776e8315fd61fd67ad00d28985b11f0b79e simplify some OUString::copy calls I got the params switched around Change-Id: I68da0ae681f2b886e35f74bd72de0c482c843ae9 Reviewed-on: https://gerrit.libreoffice.org/58986 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-08-14Resolves: tdf#119251 parse non-default units in user inputted valuesCaolán McNamara
Change-Id: I28f8338f5c318f2228b742e2e171d53820cb0cc8 Reviewed-on: https://gerrit.libreoffice.org/58984 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
2018-08-14tdf#119231: Add missing help response idXisco Fauli
Change-Id: I2c89e44e5d78377666bacb2393b26323f1e0a904 Reviewed-on: https://gerrit.libreoffice.org/58919 Tested-by: Jenkins Reviewed-by: Adolfo Jayme Barrientos <fitojb@ubuntu.com>
2018-08-14tdf#116856 Update screenshot imagesXisco Fauli
Taken from https://www.libreoffice.org/discover/screenshots/ Thanks to guilhem for creating the hub redirection Change-Id: I57a8fb928e9353d9b305c2e1b09b4f0dd13624f6 Reviewed-on: https://gerrit.libreoffice.org/52767 Tested-by: Jenkins Reviewed-by: Adolfo Jayme Barrientos <fitojb@ubuntu.com>
2018-08-14Update git submodulesJan Holesovsky
* Update helpcontent2 from branch 'master' - Rename 'map' to 'hid2fileMap'. Also update dependency, so that the file gets rebuilt when the 'echo' part of the makefile changes. Change-Id: I0412f882dd12e265d8261a259ed83c469e261cdf Reviewed-on: https://gerrit.libreoffice.org/58993 Tested-by: Jenkins Reviewed-by: Jan Holesovsky <kendy@collabora.com>
2018-08-14tdf#118825 move basegfx::internal::putNumberCharWithSpaceMark Hung
to anonymous namespace. While basegfx::internal::putNumberCharWithSpace is only used in exportToSvgD, move it into the anonymous in the same file for later enhancement. Change-Id: I6534ac39b2095ed2ba12acc114c75737ad8dacb6 Reviewed-on: https://gerrit.libreoffice.org/58847 Tested-by: Jenkins Reviewed-by: Mark Hung <marklh9@gmail.com>
2018-08-14loplugin:returnconstant in SwSpellDialogChildWindowNoel Grandin
Change-Id: If02664294bc9503ac8a373793edfdb8231582e76 Reviewed-on: https://gerrit.libreoffice.org/58961 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-08-14tdf#118825 refactor basegfx::utils::exportToSvgD with putCommandChar.Mark Hung
Move similar code fragments to a new function called putCommandChar. Change-Id: I7cd0beaab29110d89c3a206d6929e5154c755c4c Reviewed-on: https://gerrit.libreoffice.org/58846 Tested-by: Jenkins Reviewed-by: Mark Hung <marklh9@gmail.com>
2018-08-14Update git submodulesJan Holesovsky
* Update helpcontent2 from branch 'master' - Rename get_url.xsl to generate_hid2file.xsl, because that's what it's doing. Change-Id: I565ca442281fa8a80a59d1038d29b34d7f9d9f41 Reviewed-on: https://gerrit.libreoffice.org/58989 Tested-by: Jenkins Reviewed-by: Jan Holesovsky <kendy@collabora.com>
2018-08-14cclass_Unicode::StrChr needs to support non-BMP charsStephan Bergmann
...as seen with Clang's new -fsanitize=implicit-cast during CppunitTest_starmath_qa_cppunit: > i18npool/source/characterclassification/cclass_unicode_parser.cxx:565:46: runtime error: implicit conversion from type 'sal_uInt32' (aka 'unsigned int') of value 119886 (32-bit, unsigned) to type 'sal_Unicode' (aka 'char16_t') changed the value to 54350 (16-bit, unsigned) > #0 in i18npool::cclass_Unicode::getFlags(unsigned int) at i18npool/source/characterclassification/cclass_unicode_parser.cxx:565:46 (instdir/program/libi18npoollo.so +0x3ae807) > #1 in i18npool::cclass_Unicode::parseText(com::sun::star::i18n::ParseResult&, rtl::OUString const&, int, int) at i18npool/source/characterclassification/cclass_unicode_parser.cxx:712:29 (instdir/program/libi18npoollo.so +0x3b04c3) > #2 in i18npool::cclass_Unicode::parsePredefinedToken(int, rtl::OUString const&, int, com::sun::star::lang::Locale const&, int, rtl::OUString const&, int, rtl::OUString const&) at i18npool/source/characterclassification/cclass_unicode.cxx:275:5 (instdir/program/libi18npoollo.so +0x3a17ea) > #3 in non-virtual thunk to i18npool::cclass_Unicode::parsePredefinedToken(int, rtl::OUString const&, int, com::sun::star::lang::Locale const&, int, rtl::OUString const&, int, rtl::OUString const&) at i18npool/source/characterclassification/cclass_unicode.cxx (instdir/program/libi18npoollo.so +0x3a18dc) > #4 in i18npool::CharacterClassificationImpl::parsePredefinedToken(int, rtl::OUString const&, int, com::sun::star::lang::Locale const&, int, rtl::OUString const&, int, rtl::OUString const&) at i18npool/source/characterclassification/characterclassificationImpl.cxx:118:63 (instdir/program/libi18npoollo.so +0x3c48ba) > #5 in non-virtual thunk to i18npool::CharacterClassificationImpl::parsePredefinedToken(int, rtl::OUString const&, int, com::sun::star::lang::Locale const&, int, rtl::OUString const&, int, rtl::OUString const&) at i18npool/source/characterclassification/characterclassificationImpl.cxx (instdir/program/libi18npoollo.so +0x3c497c) > #6 in CharClass::parsePredefinedToken(int, rtl::OUString const&, int, int, rtl::OUString const&, int, rtl::OUString const&) const at unotools/source/i18n/charclass.cxx:443:25 (instdir/program/libutllo.so +0x904d17) > #7 in SmParser::NextToken() at starmath/source/parse.cxx:391:25 (workdir/LinkTarget/CppunitTest/libtest_starmath_qa_cppunit.so +0xa4a3e7) > #8 in SmParser::DoTerm(bool) at starmath/source/parse.cxx:1337:13 (workdir/LinkTarget/CppunitTest/libtest_starmath_qa_cppunit.so +0xa5951b) > #9 in SmParser::DoPower() at starmath/source/parse.cxx:1285:35 (workdir/LinkTarget/CppunitTest/libtest_starmath_qa_cppunit.so +0xa57d46) > #10 in SmParser::DoProduct() at starmath/source/parse.cxx:1105:19 (workdir/LinkTarget/CppunitTest/libtest_starmath_qa_cppunit.so +0xa5685a) > #11 in SmParser::DoSum() at starmath/source/parse.cxx:1087:19 (workdir/LinkTarget/CppunitTest/libtest_starmath_qa_cppunit.so +0xa55ebc) > #12 in SmParser::DoRelation() at starmath/source/parse.cxx:1069:19 (workdir/LinkTarget/CppunitTest/libtest_starmath_qa_cppunit.so +0xa558dc) > #13 in SmParser::DoExpression(bool) at starmath/source/parse.cxx:1043:29 (workdir/LinkTarget/CppunitTest/libtest_starmath_qa_cppunit.so +0xa54ff5) > #14 in SmParser::ParseExpression(rtl::OUString const&) at starmath/source/parse.cxx:2366:12 (workdir/LinkTarget/CppunitTest/libtest_starmath_qa_cppunit.so +0xa671dc) > #15 in (anonymous namespace)::Test::ParseAndCompare(char const*, char const*, char const*) at starmath/qa/cppunit/test_nodetotextvisitors.cxx:485:30 (workdir/LinkTarget/CppunitTest/libtest_starmath_qa_cppunit.so +0x5f7ea6) > #16 in (anonymous namespace)::Test::testMiscEquivalent() at starmath/qa/cppunit/test_nodetotextvisitors.cxx:637:5 (workdir/LinkTarget/CppunitTest/libtest_starmath_qa_cppunit.so +0x5f2dc8) Change-Id: Iaf62efd60bd6132e005ab69ce385bbf5c2db5d19 Reviewed-on: https://gerrit.libreoffice.org/58979 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2018-08-14tdf#117127 crash on inspecting value describing a tableCaolán McNamara
since... commit f86d0413f7cedf096b285c2eb6698653dd99c21e Date: Mon Mar 30 01:26:21 2015 +0200 SwXCellRange:: and SwXTextTable::getDataArray() do the same which used to have more checks than its replacement Change-Id: Id931882ef7c749ffa18ef3474e3e661ba8614ab0 Reviewed-on: https://gerrit.libreoffice.org/58976 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
2018-08-14abandon import on bad entryCaolán McNamara
Change-Id: I86a48eec43505966bca03aca947ab4d67de41e60 Reviewed-on: https://gerrit.libreoffice.org/58967 Reviewed-by: Stephan Bergmann <sbergman@redhat.com> Tested-by: Jenkins
2018-08-14Adapt new code to getLocStart renameStephan Bergmann
Change-Id: I96cabd351e06de6b3e728c456bd05156572822c9
2018-08-14loplugin:returnconstant in ScXMLChartExportWrapperNoel Grandin
Change-Id: Ibf448058d5c67455a747a276717ba659559017bc Reviewed-on: https://gerrit.libreoffice.org/58957 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-08-14loplugin:returnconstant in SwEditShellNoel Grandin
Change-Id: I0daa8938e81017f8c6db4da55aed297f767799b7 Reviewed-on: https://gerrit.libreoffice.org/58959 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-08-14ofz#7790 InsertMatrixFormula timeoutCaolán McNamara
Change-Id: Ic99e4db85495f7581ff09cbfcc7bf1f57b016709 Reviewed-on: https://gerrit.libreoffice.org/58972 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
2018-08-14mv rather than cp fuzzerCaolán McNamara
Change-Id: I8166bef1c7786c17f531be807029ba8d609931b3 Reviewed-on: https://gerrit.libreoffice.org/58971 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
2018-08-14use std::unique_ptrCaolán McNamara
Change-Id: Ib76d6a82037e36a41cebdf86af9754a51aab213c Reviewed-on: https://gerrit.libreoffice.org/58968 Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
2018-08-14apparmor: update program.soffice.bin for KDEVincas Dargis
Add rules to fix file dialog and other issues with 6.2 alpha1 on Debian Buster with KDE desktop. Change-Id: Ib1b20c5809ac9bdea1bf2623eff4345fa42fd4f3 Reviewed-on: https://gerrit.libreoffice.org/58702 Tested-by: Jenkins Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de> Reviewed-by: Katarina Behrens <Katarina.Behrens@cib.de>
2018-08-14filter out some of the AST in the pluginsNoel Grandin
by checking if the current namespace decl is in our code, so we have to scan less stuff, which results in a 10% perf improvement for me Change-Id: Idf0e30d57b6d0dcd13daa9ed679c28b9d233d387 Reviewed-on: https://gerrit.libreoffice.org/58942 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-08-14tdf#116542 a11y: introduce STATIC roleSamuel Thibault
This should be used for brief non-editable text which is not meant to have a relation with another object (as opposed to text or label). Change-Id: I46bfa56042a51295e9fa0d332babdbb40668ff0b Reviewed-on: https://gerrit.libreoffice.org/58734 Tested-by: Jenkins Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
2018-08-14loplugin:returnconstant in SwChartDataProviderNoel Grandin
Change-Id: Ia9dc1f9c5a02162359c1fe6e65f21ae5dede7702 Reviewed-on: https://gerrit.libreoffice.org/58965 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-08-14loplugin:returnconstant in reportdesignNoel Grandin
Change-Id: I3a198faad8f4dff607b1a7e1a06afda0225b4f9a Reviewed-on: https://gerrit.libreoffice.org/58964 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-08-14loplugin:returnconstant in ScInterpreterNoel Grandin
Change-Id: I2ba3fde098b082659656e6a21771495ec97775d1 Reviewed-on: https://gerrit.libreoffice.org/58956 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-08-14loplugin:returnconstant in SwTextCursorNoel Grandin
Change-Id: If695e6f1564ca37e9bb9870c6fee20d639fb721c Reviewed-on: https://gerrit.libreoffice.org/58962 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-08-14loplugin:returnconstant in SvxCSS1ParserNoel Grandin
Change-Id: I890fe1c116c487a6065f4b47d3f9cebe4803ef77 Reviewed-on: https://gerrit.libreoffice.org/58963 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-08-14loplugin:returnconstant in SwTabFrameNoel Grandin
Change-Id: I9a8ecd32516315df25e7bd3c9c6672743c567035 Reviewed-on: https://gerrit.libreoffice.org/58960 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-08-14loplugin:returnconstant in ScColumnNoel Grandin
Change-Id: I105d07da6e1a9259a7b833a1259c0e992e35a03d Reviewed-on: https://gerrit.libreoffice.org/58954 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-08-14loplugin:returnconstant in SwGrfNodeNoel Grandin
Change-Id: If6e7c7750db8cdc45a2c487f1aebcf504a0e1edb Reviewed-on: https://gerrit.libreoffice.org/58958 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-08-14tdf#119245 Set a parent for OParameterDialogMaxim Monastirsky
Change-Id: I5a7f4b43027a72f049e12c06cd583c6545b028f5 Reviewed-on: https://gerrit.libreoffice.org/58952 Tested-by: Jenkins Reviewed-by: Maxim Monastirsky <momonasmon@gmail.com>
2018-08-14mml needs pdffilter tooCaolán McNamara
Change-Id: If5faadee3504d88df8584850905d3b3de46c0328
2018-08-14LwpObjectID::GetLow returns sal_uInt32Stephan Bergmann
...and b7af008a35f48b821dd95f3d2d945f254bf4ed26 "remove first chunk of lotuswordpro warnings" probably changed that in error: void LwpGraphicObject::GetBentoNamebyID(LwpObjectID* pMyID, std::string& rName) { sal_uInt16 nHigh = pMyID->GetHigh(); - sal_uInt32 nLow = pMyID->GetLow(); + sal_uInt16 nLow = pMyID->GetLow(); char pTempStr[32]; rName = std::string("Gr"); - sprintf(pTempStr, "%X,%lX", nHigh, nLow); + sprintf(pTempStr, "%X,%X", nHigh, nLow); rName.append(pTempStr); } Found with new Clang -fsanitize=implicit-conversion during CppunitTest_lotuswordpro_test_lotuswordpro: > Testing file:///home/sbergman/lo/core/lotuswordpro/qa/cppunit/data/pass/IntPres11-2004.lwp: > lotuswordpro/source/filter/lwpgrfobj.cxx:321:23: runtime error: implicit conversion from type 'sal_uInt32' (aka 'unsigned int') of value 1085767199 (32-bit, unsigned) to type 'sal_uInt16' (aka 'unsigned short') changed the value to 32287 (16-bit, unsigned) > #0 in LwpGraphicObject::GetBentoNamebyID(LwpObjectID const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) at lotuswordpro/source/filter/lwpgrfobj.cxx:321:23 (instdir/program/liblwpftlo.so +0x948b85) > #1 in LwpGraphicObject::GetRawGrafData() at lotuswordpro/source/filter/lwpgrfobj.cxx:352:5 (instdir/program/liblwpftlo.so +0x940cae) > #2 in LwpGraphicObject::XFConvert(XFContentContainer*) at lotuswordpro/source/filter/lwpgrfobj.cxx:228:48 (instdir/program/liblwpftlo.so +0x93e1af) > #3 in LwpObject::DoXFConvert(XFContentContainer*) at lotuswordpro/inc/lwpobj.hxx:129:9 (instdir/program/liblwpftlo.so +0x84a472) > #4 in LwpFrameLayout::XFConvertFrame(XFContentContainer*, int, int, bool) at lotuswordpro/source/filter/lwpframelayout.cxx:836:26 (instdir/program/liblwpftlo.so +0x87ba7b) > #5 in LwpFrameLayout::XFConvert(XFContentContainer*) at lotuswordpro/source/filter/lwpframelayout.cxx:800:13 (instdir/program/liblwpftlo.so +0x87b1b0) > #6 in LwpObject::DoXFConvert(XFContentContainer*) at lotuswordpro/inc/lwpobj.hxx:129:9 (instdir/program/liblwpftlo.so +0x84a472) > #7 in LwpFribFrame::XFConvert(XFContentContainer*) at lotuswordpro/source/filter/lwpfribframe.cxx:183:14 (instdir/program/liblwpftlo.so +0x8a6382) > #8 in LwpFribPtr::XFConvert() at lotuswordpro/source/filter/lwpfribptr.cxx:280:24 (instdir/program/liblwpftlo.so +0x8f187d) > #9 in LwpPara::XFConvert(XFContentContainer*) at lotuswordpro/source/filter/lwppara.cxx:258:13 (instdir/program/liblwpftlo.so +0xa608a1) > #10 in LwpStory::XFConvert(XFContentContainer*) at lotuswordpro/source/filter/lwpstory.cxx:110:16 (instdir/program/liblwpftlo.so +0xae1e1a) > #11 in LwpStory::Parse(IXFStream*) at lotuswordpro/source/filter/lwpstory.cxx:156:5 (instdir/program/liblwpftlo.so +0xae6aa7) > #12 in LwpObject::DoParse(IXFStream*) at lotuswordpro/inc/lwpobj.hxx:119:9 (instdir/program/liblwpftlo.so +0x7a4802) > #13 in LwpPageLayout::Parse(IXFStream*) at lotuswordpro/source/filter/lwppagelayout.cxx:120:17 (instdir/program/liblwpftlo.so +0xa1885d) > #14 in LwpObject::DoParse(IXFStream*) at lotuswordpro/inc/lwpobj.hxx:119:9 (instdir/program/liblwpftlo.so +0x7a4802) > #15 in LwpDocument::ParseDocContent(IXFStream*) at lotuswordpro/source/filter/lwpdoc.cxx:428:17 (instdir/program/liblwpftlo.so +0x794de5) > #16 in LwpDocument::Parse(IXFStream*) at lotuswordpro/source/filter/lwpdoc.cxx:158:9 (instdir/program/liblwpftlo.so +0x792f6a) > #17 in LwpObject::DoParse(IXFStream*) at lotuswordpro/inc/lwpobj.hxx:119:9 (instdir/program/liblwpftlo.so +0x7a4802) > #18 in LwpDocSock::Parse(IXFStream*) at lotuswordpro/source/filter/lwpdoc.cxx:816:15 (instdir/program/liblwpftlo.so +0x7a3a4f) > #19 in LwpObject::DoParse(IXFStream*) at lotuswordpro/inc/lwpobj.hxx:119:9 (instdir/program/liblwpftlo.so +0x7a4802) > #20 in LwpDocument::Parse(IXFStream*) at lotuswordpro/source/filter/lwpdoc.cxx:164:19 (instdir/program/liblwpftlo.so +0x793148) > #21 in Lwp9Reader::ParseDocument() at lotuswordpro/source/filter/lwp9reader.cxx:167:10 (instdir/program/liblwpftlo.so +0x6f52a1) > #22 in Lwp9Reader::Read() at lotuswordpro/source/filter/lwp9reader.cxx:90:20 (instdir/program/liblwpftlo.so +0x6f3fbc) > #23 in ReadWordproFile(SvStream&, com::sun::star::uno::Reference<com::sun::star::xml::sax::XDocumentHandler> const&) at lotuswordpro/source/filter/lwpfilter.cxx:215:33 (instdir/program/liblwpftlo.so +0x82442d) > #24 in LotusWordProImportFilter::importImpl(com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&) at lotuswordpro/source/filter/LotusWordProImportFilter.cxx:75:14 (instdir/program/liblwpftlo.so +0x6e4aca) > #25 in LotusWordProImportFilter::filter(com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&) at lotuswordpro/source/filter/LotusWordProImportFilter.cxx:87:12 (instdir/program/liblwpftlo.so +0x6e4d8a) > #26 in (anonymous namespace)::LotusWordProTest::load(rtl::OUString const&, rtl::OUString const&, rtl::OUString const&, SfxFilterFlags, SotClipboardFormatId, unsigned int) at lotuswordpro/qa/cppunit/test_lotuswordpro.cxx:59:27 (workdir/LinkTarget/CppunitTest/libtest_lotuswordpro_test_lotuswordpro.so +0x14a52) > #27 in test::FiltersTest::recursiveScan(test::filterStatus, rtl::OUString const&, rtl::OUString const&, rtl::OUString const&, SfxFilterFlags, SotClipboardFormatId, unsigned int, bool) at unotest/source/cpp/filters-test.cxx:130:20 (workdir/LinkTarget/CppunitTest/../Library/libunotest.so +0x5724c) > #28 in test::FiltersTest::testDir(rtl::OUString const&, rtl::OUString const&, rtl::OUString const&, SfxFilterFlags, SotClipboardFormatId, unsigned int, bool) at unotest/source/cpp/filters-test.cxx:155:5 (workdir/LinkTarget/CppunitTest/../Library/libunotest.so +0x57ec9) > #29 in (anonymous namespace)::LotusWordProTest::test() at lotuswordpro/qa/cppunit/test_lotuswordpro.cxx:64:9 (workdir/LinkTarget/CppunitTest/libtest_lotuswordpro_test_lotuswordpro.so +0x153d4) > #30 in void std::__invoke_impl<void, void ((anonymous namespace)::LotusWordProTest::*&)(), (anonymous namespace)::LotusWordProTest*&>(std::__invoke_memfun_deref, void ((anonymous namespace)::LotusWordProTest::*&)(), (anonymous namespace)::LotusWordProTest*&) at /usr/lib/gcc/x86_64-redhat-linux/8/../../../../include/c++/8/bits/invoke.h:73:14 (workdir/LinkTarget/CppunitTest/libtest_lotuswordpro_test_lotuswordpro.so +0x17fcd) > #31 in std::__invoke_result<void ((anonymous namespace)::LotusWordProTest::*&)(), (anonymous namespace)::LotusWordProTest*&>::type std::__invoke<void ((anonymous namespace)::LotusWordProTest::*&)(), (anonymous namespace)::LotusWordProTest*&>(void ((anonymous namespace)::LotusWordProTest::*&)(), (anonymous namespace)::LotusWordProTest*&) at /usr/lib/gcc/x86_64-redhat-linux/8/../../../../include/c++/8/bits/invoke.h:95:14 (workdir/LinkTarget/CppunitTest/libtest_lotuswordpro_test_lotuswordpro.so +0x17c6b) > #32 in void std::_Bind<void ((anonymous namespace)::LotusWordProTest::* ((anonymous namespace)::LotusWordProTest*))()>::__call<void, 0ul>(std::tuple<>&&, std::_Index_tuple<0ul>) at /usr/lib/gcc/x86_64-redhat-linux/8/../../../../include/c++/8/functional:400:11 (workdir/LinkTarget/CppunitTest/libtest_lotuswordpro_test_lotuswordpro.so +0x17b28) > #33 in void std::_Bind<void ((anonymous namespace)::LotusWordProTest::* ((anonymous namespace)::LotusWordProTest*))()>::operator()<void>() at /usr/lib/gcc/x86_64-redhat-linux/8/../../../../include/c++/8/functional:482:17 (workdir/LinkTarget/CppunitTest/libtest_lotuswordpro_test_lotuswordpro.so +0x178e5) > #34 in std::_Function_handler<void (), std::_Bind<void ((anonymous namespace)::LotusWordProTest::* ((anonymous namespace)::LotusWordProTest*))()> >::_M_invoke(std::_Any_data const&) at /usr/lib/gcc/x86_64-redhat-linux/8/../../../../include/c++/8/bits/std_function.h:297:2 (workdir/LinkTarget/CppunitTest/libtest_lotuswordpro_test_lotuswordpro.so +0x16bc6) > #35 in std::function<void ()>::operator()() const at /usr/lib/gcc/x86_64-redhat-linux/8/../../../../include/c++/8/bits/std_function.h:687:14 (workdir/LinkTarget/CppunitTest/libtest_lotuswordpro_test_lotuswordpro.so +0x23276) > #36 in CppUnit::TestCaller<(anonymous namespace)::LotusWordProTest>::runTest() at workdir/UnpackedTarball/cppunit/include/cppunit/TestCaller.h:175:7 (workdir/LinkTarget/CppunitTest/libtest_lotuswordpro_test_lotuswordpro.so +0x160c6) > #37 in CppUnit::TestCaseMethodFunctor::operator()() const at workdir/UnpackedTarball/cppunit/src/cppunit/TestCase.cpp:32:5 (workdir/UnpackedTarball/cppunit/src/cppunit/.libs/libcppunit-1.14.so.0 +0x22c1f1) > #38 in (anonymous namespace)::Protector::protect(CppUnit::Functor const&, CppUnit::ProtectorContext const&) at test/source/vclbootstrapprotector.cxx:49:14 (workdir/LinkTarget/Library/libvclbootstrapprotector.so +0x159a) > #39 in CppUnit::ProtectorChain::ProtectFunctor::operator()() const at workdir/UnpackedTarball/cppunit/src/cppunit/ProtectorChain.cpp:20:25 (workdir/UnpackedTarball/cppunit/src/cppunit/.libs/libcppunit-1.14.so.0 +0x20e64d) > #40 in (anonymous namespace)::Prot::protect(CppUnit::Functor const&, CppUnit::ProtectorContext const&) at unotest/source/cpp/unobootstrapprotector/unobootstrapprotector.cxx:88:12 (workdir/LinkTarget/Library/unobootstrapprotector.so +0x987a) > #41 in CppUnit::ProtectorChain::ProtectFunctor::operator()() const at workdir/UnpackedTarball/cppunit/src/cppunit/ProtectorChain.cpp:20:25 (workdir/UnpackedTarball/cppunit/src/cppunit/.libs/libcppunit-1.14.so.0 +0x20e64d) > #42 in (anonymous namespace)::Prot::protect(CppUnit::Functor const&, CppUnit::ProtectorContext const&) at unotest/source/cpp/unoexceptionprotector/unoexceptionprotector.cxx:63:16 (workdir/LinkTarget/Library/unoexceptionprotector.so +0x5000) > #43 in CppUnit::ProtectorChain::ProtectFunctor::operator()() const at workdir/UnpackedTarball/cppunit/src/cppunit/ProtectorChain.cpp:20:25 (workdir/UnpackedTarball/cppunit/src/cppunit/.libs/libcppunit-1.14.so.0 +0x20e64d) > #44 in CppUnit::DefaultProtector::protect(CppUnit::Functor const&, CppUnit::ProtectorContext const&) at workdir/UnpackedTarball/cppunit/src/cppunit/DefaultProtector.cpp:15:12 (workdir/UnpackedTarball/cppunit/src/cppunit/.libs/libcppunit-1.14.so.0 +0x1c6c51) > #45 in CppUnit::ProtectorChain::ProtectFunctor::operator()() const at workdir/UnpackedTarball/cppunit/src/cppunit/ProtectorChain.cpp:20:25 (workdir/UnpackedTarball/cppunit/src/cppunit/.libs/libcppunit-1.14.so.0 +0x20e64d) > #46 in CppUnit::ProtectorChain::protect(CppUnit::Functor const&, CppUnit::ProtectorContext const&) at workdir/UnpackedTarball/cppunit/src/cppunit/ProtectorChain.cpp:86:18 (workdir/UnpackedTarball/cppunit/src/cppunit/.libs/libcppunit-1.14.so.0 +0x2096b8) > #47 in CppUnit::TestResult::protect(CppUnit::Functor const&, CppUnit::Test*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) at workdir/UnpackedTarball/cppunit/src/cppunit/TestResult.cpp:182:28 (workdir/UnpackedTarball/cppunit/src/cppunit/.libs/libcppunit-1.14.so.0 +0x26c3e4) > #48 in CppUnit::TestCase::run(CppUnit::TestResult*) at workdir/UnpackedTarball/cppunit/src/cppunit/TestCase.cpp:91:13 (workdir/UnpackedTarball/cppunit/src/cppunit/.libs/libcppunit-1.14.so.0 +0x22b1fb) > #49 in CppUnit::TestComposite::doRunChildTests(CppUnit::TestResult*) at workdir/UnpackedTarball/cppunit/src/cppunit/TestComposite.cpp:64:30 (workdir/UnpackedTarball/cppunit/src/cppunit/.libs/libcppunit-1.14.so.0 +0x22db43) > #50 in CppUnit::TestComposite::run(CppUnit::TestResult*) at workdir/UnpackedTarball/cppunit/src/cppunit/TestComposite.cpp:23:3 (workdir/UnpackedTarball/cppunit/src/cppunit/.libs/libcppunit-1.14.so.0 +0x22d119) > #51 in CppUnit::TestComposite::doRunChildTests(CppUnit::TestResult*) at workdir/UnpackedTarball/cppunit/src/cppunit/TestComposite.cpp:64:30 (workdir/UnpackedTarball/cppunit/src/cppunit/.libs/libcppunit-1.14.so.0 +0x22db43) > #52 in CppUnit::TestComposite::run(CppUnit::TestResult*) at workdir/UnpackedTarball/cppunit/src/cppunit/TestComposite.cpp:23:3 (workdir/UnpackedTarball/cppunit/src/cppunit/.libs/libcppunit-1.14.so.0 +0x22d119) > #53 in CppUnit::TestRunner::WrappingSuite::run(CppUnit::TestResult*) at workdir/UnpackedTarball/cppunit/src/cppunit/TestRunner.cpp:47:27 (workdir/UnpackedTarball/cppunit/src/cppunit/.libs/libcppunit-1.14.so.0 +0x28b6c2) > #54 in CppUnit::TestResult::runTest(CppUnit::Test*) at workdir/UnpackedTarball/cppunit/src/cppunit/TestResult.cpp:149:9 (workdir/UnpackedTarball/cppunit/src/cppunit/.libs/libcppunit-1.14.so.0 +0x26b715) > #55 in CppUnit::TestRunner::run(CppUnit::TestResult&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) at workdir/UnpackedTarball/cppunit/src/cppunit/TestRunner.cpp:96:14 (workdir/UnpackedTarball/cppunit/src/cppunit/.libs/libcppunit-1.14.so.0 +0x28c103) > #56 in (anonymous namespace)::ProtectedFixtureFunctor::run() const at sal/cppunittester/cppunittester.cxx:316:20 (workdir/LinkTarget/Executable/cppunittester +0x440697) > #57 in sal_main() at sal/cppunittester/cppunittester.cxx:466:20 (workdir/LinkTarget/Executable/cppunittester +0x43e2fc) > #58 in main at sal/cppunittester/cppunittester.cxx:373:1 (workdir/LinkTarget/Executable/cppunittester +0x43d90e) > #59 in __libc_start_main at /usr/src/debug/glibc-2.27-74-g68c1bf8097/csu/../csu/libc-start.c:308:16 (/lib64/libc.so.6 +0x2324a) > #60 in _start at <null> (workdir/LinkTarget/Executable/cppunittester +0x4172a9) Change-Id: I90f3ed9efa56359005e84732139452acacbaa0ad Reviewed-on: https://gerrit.libreoffice.org/58937 Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Jenkins
2018-08-14Don't call LwpTools::QuickReadUnicode with negative, wrapped-around strlenStephan Bergmann
...as happens during CppunitTest_lotuswordpro_test_lotuswordpro (as found with new Clang -fsanitize=implicit-conversion, see below). (The code was like that ever since its introduction with cc316b39d9110c536e1758a4f814738ca209bb02 "Port of Lotus Word Pro filter, by Fong Lin and Noel Power".) > lotuswordpro/source/filter/lwpatomholder.cxx:83:49: runtime error: implicit conversion from type 'unsigned long' of value 18446744073709551615 (64-bit, unsigned) to type 'sal_uInt16' (aka 'unsigned short') changed the value to 65535 (16-bit, unsigned) > #0 in LwpAtomHolder::Read(LwpObjectStream*) at lotuswordpro/source/filter/lwpatomholder.cxx:83:49 (instdir/program/liblwpftlo.so +0x705fd2) > #1 in LwpFontTableEntry::Read(LwpObjectStream*) at lotuswordpro/source/filter/lwpfont.cxx:218:23 (instdir/program/liblwpftlo.so +0x834958) > #2 in LwpFontTable::Read(LwpObjectStream*) at lotuswordpro/source/filter/lwpfont.cxx:260:31 (instdir/program/liblwpftlo.so +0x8351ce) > #3 in LwpFontNameManager::Read(LwpObjectStream*) at lotuswordpro/source/filter/lwpfont.cxx:379:15 (instdir/program/liblwpftlo.so +0x836587) > #4 in LwpFontManager::Read(LwpObjectStream*) at lotuswordpro/source/filter/lwpfont.cxx:433:13 (instdir/program/liblwpftlo.so +0x83767a) > #5 in LwpFoundry::Read(LwpObjectStream*) at lotuswordpro/source/filter/lwpfoundry.cxx:123:15 (instdir/program/liblwpftlo.so +0x850f23) > #6 in LwpFoundry::LwpFoundry(LwpObjectStream*, LwpDocument*) at lotuswordpro/source/filter/lwpfoundry.cxx:81:5 (instdir/program/liblwpftlo.so +0x850519) > #7 in LwpDocument::Read() at lotuswordpro/source/filter/lwpdoc.cxx:116:31 (instdir/program/liblwpftlo.so +0x791ae6) > #8 in LwpObject::QuickRead() at lotuswordpro/source/filter/lwpobj.cxx:81:5 (instdir/program/liblwpftlo.so +0x9d4989) > #9 in LwpObjectFactory::CreateObject(unsigned int, LwpObjectHeader&) at lotuswordpro/source/filter/lwpobjfactory.cxx:661:17 (instdir/program/liblwpftlo.so +0x9df914) > #10 in LwpObjectFactory::QueryObject(LwpObjectID const&) at lotuswordpro/source/filter/lwpobjfactory.cxx:704:15 (instdir/program/liblwpftlo.so +0x9e058f) > #11 in LwpObjectID::obj(VO_TYPE) const at lotuswordpro/source/filter/lwpobjid.cxx:190:47 (instdir/program/liblwpftlo.so +0xa00b99) > #12 in LwpDocument::GetFirstDivision() at lotuswordpro/source/filter/lwpdoc.cxx:621:68 (instdir/program/liblwpftlo.so +0x7a0e21) > #13 in LwpDocument::ImplGetFirstDivisionWithContentsThatIsNotOLE() at lotuswordpro/source/filter/lwpdoc.cxx:653:30 (instdir/program/liblwpftlo.so +0x7a1532) > #14 in LwpDocument::GetFirstDivisionWithContentsThatIsNotOLE() at lotuswordpro/source/filter/lwpdoc.hxx:159:29 (instdir/program/liblwpftlo.so +0x7a8bcc) > #15 in LwpDocument::RegisterDefaultParaStyles() at lotuswordpro/source/filter/lwpdoc.cxx:398:34 (instdir/program/liblwpftlo.so +0x795aae) > #16 in LwpDocument::RegisterStyle() at lotuswordpro/source/filter/lwpdoc.cxx:207:5 (instdir/program/liblwpftlo.so +0x795376) > #17 in LwpObject::DoRegisterStyle() at lotuswordpro/inc/lwpobj.hxx:109:9 (instdir/program/liblwpftlo.so +0x70070a) > #18 in Lwp9Reader::ParseDocument() at lotuswordpro/source/filter/lwp9reader.cxx:154:10 (instdir/program/liblwpftlo.so +0x6f5197) > #19 in Lwp9Reader::Read() at lotuswordpro/source/filter/lwp9reader.cxx:90:20 (instdir/program/liblwpftlo.so +0x6f444c) > #20 in ReadWordproFile(SvStream&, com::sun::star::uno::Reference<com::sun::star::xml::sax::XDocumentHandler> const&) at lotuswordpro/source/filter/lwpfilter.cxx:215:33 (instdir/program/liblwpftlo.so +0x82488d) > #21 in LotusWordProImportFilter::importImpl(com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&) at lotuswordpro/source/filter/LotusWordProImportFilter.cxx:75:14 (instdir/program/liblwpftlo.so +0x6e4f5a) > #22 in LotusWordProImportFilter::filter(com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&) at lotuswordpro/source/filter/LotusWordProImportFilter.cxx:87:12 (instdir/program/liblwpftlo.so +0x6e521a) > #23 in (anonymous namespace)::LotusWordProTest::load(rtl::OUString const&, rtl::OUString const&, rtl::OUString const&, SfxFilterFlags, SotClipboardFormatId, unsigned int) at lotuswordpro/qa/cppunit/test_lotuswordpro.cxx:59:27 (workdir/LinkTarget/CppunitTest/libtest_lotuswordpro_test_lotuswordpro.so +0x14a52) > #24 in test::FiltersTest::recursiveScan(test::filterStatus, rtl::OUString const&, rtl::OUString const&, rtl::OUString const&, SfxFilterFlags, SotClipboardFormatId, unsigned int, bool) at unotest/source/cpp/filters-test.cxx:130:20 (workdir/LinkTarget/CppunitTest/../Library/libunotest.so +0x5724c) > #25 in test::FiltersTest::testDir(rtl::OUString const&, rtl::OUString const&, rtl::OUString const&, SfxFilterFlags, SotClipboardFormatId, unsigned int, bool) at unotest/source/cpp/filters-test.cxx:158:5 (workdir/LinkTarget/CppunitTest/../Library/libunotest.so +0x580e7) > #26 in (anonymous namespace)::LotusWordProTest::test() at lotuswordpro/qa/cppunit/test_lotuswordpro.cxx:64:9 (workdir/LinkTarget/CppunitTest/libtest_lotuswordpro_test_lotuswordpro.so +0x153d4) > #27 in void std::__invoke_impl<void, void ((anonymous namespace)::LotusWordProTest::*&)(), (anonymous namespace)::LotusWordProTest*&>(std::__invoke_memfun_deref, void ((anonymous namespace)::LotusWordProTest::*&)(), (anonymous namespace)::LotusWordProTest*&) at /usr/lib/gcc/x86_64-redhat-linux/8/../../../../include/c++/8/bits/invoke.h:73:14 (workdir/LinkTarget/CppunitTest/libtest_lotuswordpro_test_lotuswordpro.so +0x17fcd) > #28 in std::__invoke_result<void ((anonymous namespace)::LotusWordProTest::*&)(), (anonymous namespace)::LotusWordProTest*&>::type std::__invoke<void ((anonymous namespace)::LotusWordProTest::*&)(), (anonymous namespace)::LotusWordProTest*&>(void ((anonymous namespace)::LotusWordProTest::*&)(), (anonymous namespace)::LotusWordProTest*&) at /usr/lib/gcc/x86_64-redhat-linux/8/../../../../include/c++/8/bits/invoke.h:95:14 (workdir/LinkTarget/CppunitTest/libtest_lotuswordpro_test_lotuswordpro.so +0x17c6b) > #29 in void std::_Bind<void ((anonymous namespace)::LotusWordProTest::* ((anonymous namespace)::LotusWordProTest*))()>::__call<void, 0ul>(std::tuple<>&&, std::_Index_tuple<0ul>) at /usr/lib/gcc/x86_64-redhat-linux/8/../../../../include/c++/8/functional:400:11 (workdir/LinkTarget/CppunitTest/libtest_lotuswordpro_test_lotuswordpro.so +0x17b28) > #30 in void std::_Bind<void ((anonymous namespace)::LotusWordProTest::* ((anonymous namespace)::LotusWordProTest*))()>::operator()<void>() at /usr/lib/gcc/x86_64-redhat-linux/8/../../../../include/c++/8/functional:482:17 (workdir/LinkTarget/CppunitTest/libtest_lotuswordpro_test_lotuswordpro.so +0x178e5) > #31 in std::_Function_handler<void (), std::_Bind<void ((anonymous namespace)::LotusWordProTest::* ((anonymous namespace)::LotusWordProTest*))()> >::_M_invoke(std::_Any_data const&) at /usr/lib/gcc/x86_64-redhat-linux/8/../../../../include/c++/8/bits/std_function.h:297:2 (workdir/LinkTarget/CppunitTest/libtest_lotuswordpro_test_lotuswordpro.so +0x16bc6) > #32 in std::function<void ()>::operator()() const at /usr/lib/gcc/x86_64-redhat-linux/8/../../../../include/c++/8/bits/std_function.h:687:14 (workdir/LinkTarget/CppunitTest/libtest_lotuswordpro_test_lotuswordpro.so +0x23276) > #33 in CppUnit::TestCaller<(anonymous namespace)::LotusWordProTest>::runTest() at workdir/UnpackedTarball/cppunit/include/cppunit/TestCaller.h:175:7 (workdir/LinkTarget/CppunitTest/libtest_lotuswordpro_test_lotuswordpro.so +0x160c6) > #34 in CppUnit::TestCaseMethodFunctor::operator()() const at workdir/UnpackedTarball/cppunit/src/cppunit/TestCase.cpp:32:5 (workdir/UnpackedTarball/cppunit/src/cppunit/.libs/libcppunit-1.14.so.0 +0x22c1f1) > #35 in (anonymous namespace)::Protector::protect(CppUnit::Functor const&, CppUnit::ProtectorContext const&) at test/source/vclbootstrapprotector.cxx:49:14 (workdir/LinkTarget/Library/libvclbootstrapprotector.so +0x159a) > #36 in CppUnit::ProtectorChain::ProtectFunctor::operator()() const at workdir/UnpackedTarball/cppunit/src/cppunit/ProtectorChain.cpp:20:25 (workdir/UnpackedTarball/cppunit/src/cppunit/.libs/libcppunit-1.14.so.0 +0x20e64d) > #37 in (anonymous namespace)::Prot::protect(CppUnit::Functor const&, CppUnit::ProtectorContext const&) at unotest/source/cpp/unobootstrapprotector/unobootstrapprotector.cxx:88:12 (workdir/LinkTarget/Library/unobootstrapprotector.so +0x987a) > #38 in CppUnit::ProtectorChain::ProtectFunctor::operator()() const at workdir/UnpackedTarball/cppunit/src/cppunit/ProtectorChain.cpp:20:25 (workdir/UnpackedTarball/cppunit/src/cppunit/.libs/libcppunit-1.14.so.0 +0x20e64d) > #39 in (anonymous namespace)::Prot::protect(CppUnit::Functor const&, CppUnit::ProtectorContext const&) at unotest/source/cpp/unoexceptionprotector/unoexceptionprotector.cxx:63:16 (workdir/LinkTarget/Library/unoexceptionprotector.so +0x5000) > #40 in CppUnit::ProtectorChain::ProtectFunctor::operator()() const at workdir/UnpackedTarball/cppunit/src/cppunit/ProtectorChain.cpp:20:25 (workdir/UnpackedTarball/cppunit/src/cppunit/.libs/libcppunit-1.14.so.0 +0x20e64d) > #41 in CppUnit::DefaultProtector::protect(CppUnit::Functor const&, CppUnit::ProtectorContext const&) at workdir/UnpackedTarball/cppunit/src/cppunit/DefaultProtector.cpp:15:12 (workdir/UnpackedTarball/cppunit/src/cppunit/.libs/libcppunit-1.14.so.0 +0x1c6c51) > #42 in CppUnit::ProtectorChain::ProtectFunctor::operator()() const at workdir/UnpackedTarball/cppunit/src/cppunit/ProtectorChain.cpp:20:25 (workdir/UnpackedTarball/cppunit/src/cppunit/.libs/libcppunit-1.14.so.0 +0x20e64d) > #43 in CppUnit::ProtectorChain::protect(CppUnit::Functor const&, CppUnit::ProtectorContext const&) at workdir/UnpackedTarball/cppunit/src/cppunit/ProtectorChain.cpp:86:18 (workdir/UnpackedTarball/cppunit/src/cppunit/.libs/libcppunit-1.14.so.0 +0x2096b8) > #44 in CppUnit::TestResult::protect(CppUnit::Functor const&, CppUnit::Test*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) at workdir/UnpackedTarball/cppunit/src/cppunit/TestResult.cpp:182:28 (workdir/UnpackedTarball/cppunit/src/cppunit/.libs/libcppunit-1.14.so.0 +0x26c3e4) > #45 in CppUnit::TestCase::run(CppUnit::TestResult*) at workdir/UnpackedTarball/cppunit/src/cppunit/TestCase.cpp:91:13 (workdir/UnpackedTarball/cppunit/src/cppunit/.libs/libcppunit-1.14.so.0 +0x22b1fb) > #46 in CppUnit::TestComposite::doRunChildTests(CppUnit::TestResult*) at workdir/UnpackedTarball/cppunit/src/cppunit/TestComposite.cpp:64:30 (workdir/UnpackedTarball/cppunit/src/cppunit/.libs/libcppunit-1.14.so.0 +0x22db43) > #47 in CppUnit::TestComposite::run(CppUnit::TestResult*) at workdir/UnpackedTarball/cppunit/src/cppunit/TestComposite.cpp:23:3 (workdir/UnpackedTarball/cppunit/src/cppunit/.libs/libcppunit-1.14.so.0 +0x22d119) > #48 in CppUnit::TestComposite::doRunChildTests(CppUnit::TestResult*) at workdir/UnpackedTarball/cppunit/src/cppunit/TestComposite.cpp:64:30 (workdir/UnpackedTarball/cppunit/src/cppunit/.libs/libcppunit-1.14.so.0 +0x22db43) > #49 in CppUnit::TestComposite::run(CppUnit::TestResult*) at workdir/UnpackedTarball/cppunit/src/cppunit/TestComposite.cpp:23:3 (workdir/UnpackedTarball/cppunit/src/cppunit/.libs/libcppunit-1.14.so.0 +0x22d119) > #50 in CppUnit::TestRunner::WrappingSuite::run(CppUnit::TestResult*) at workdir/UnpackedTarball/cppunit/src/cppunit/TestRunner.cpp:47:27 (workdir/UnpackedTarball/cppunit/src/cppunit/.libs/libcppunit-1.14.so.0 +0x28b6c2) > #51 in CppUnit::TestResult::runTest(CppUnit::Test*) at workdir/UnpackedTarball/cppunit/src/cppunit/TestResult.cpp:149:9 (workdir/UnpackedTarball/cppunit/src/cppunit/.libs/libcppunit-1.14.so.0 +0x26b715) > #52 in CppUnit::TestRunner::run(CppUnit::TestResult&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) at workdir/UnpackedTarball/cppunit/src/cppunit/TestRunner.cpp:96:14 (workdir/UnpackedTarball/cppunit/src/cppunit/.libs/libcppunit-1.14.so.0 +0x28c103) > #53 in (anonymous namespace)::ProtectedFixtureFunctor::run() const at sal/cppunittester/cppunittester.cxx:316:20 (workdir/LinkTarget/Executable/cppunittester +0x440697) > #54 in sal_main() at sal/cppunittester/cppunittester.cxx:466:20 (workdir/LinkTarget/Executable/cppunittester +0x43e2fc) > #55 in main at sal/cppunittester/cppunittester.cxx:373:1 (workdir/LinkTarget/Executable/cppunittester +0x43d90e) > #56 in __libc_start_main at /usr/src/debug/glibc-2.27-74-g68c1bf8097/csu/../csu/libc-start.c:308:16 (/lib64/libc.so.6 +0x2324a) > #57 in _start at <null> (workdir/LinkTarget/Executable/cppunittester +0x4172a9) Change-Id: If8fe6fac5fcd0853334f465bee0b6eedc8529e11 Reviewed-on: https://gerrit.libreoffice.org/58934 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2018-08-14Don't call LwpTools::QuickReadUnicode with negative, wrapped-around strlenStephan Bergmann
...as happens during CppunitTest_lotuswordpro_test_lotuswordpro (as found with new Clang -fsanitize=implicit-conversion, see below). (The code was like that ever since its introduction with cc316b39d9110c536e1758a4f814738ca209bb02 "Port of Lotus Word Pro filter, by Fong Lin and Noel Power".) Not sure how to report errors there, so just issue a SAL_WARN and return an empty string for now. > lotuswordpro/source/filter/lwpobjstrm.cxx:374:43: runtime error: implicit conversion from type 'unsigned long' of value 18446744073709551614 (64-bit, unsigned) to type 'sal_uInt16' (aka 'unsigned short') changed the value to 65534 (16-bit, unsigned) > #0 in LwpObjectStream::QuickReadStringPtr() at lotuswordpro/source/filter/lwpobjstrm.cxx:374:43 (instdir/program/liblwpftlo.so +0xa035d8) > #1 in LwpOleObject::Read() at lotuswordpro/source/filter/lwpoleobject.cxx:214:21 (instdir/program/liblwpftlo.so +0xa06630) > #2 in LwpObject::QuickRead() at lotuswordpro/source/filter/lwpobj.cxx:81:5 (instdir/program/liblwpftlo.so +0x9d4469) > #3 in LwpObjectFactory::CreateObject(unsigned int, LwpObjectHeader&) at lotuswordpro/source/filter/lwpobjfactory.cxx:661:17 (instdir/program/liblwpftlo.so +0x9df3f4) > #4 in LwpObjectFactory::QueryObject(LwpObjectID const&) at lotuswordpro/source/filter/lwpobjfactory.cxx:704:15 (instdir/program/liblwpftlo.so +0x9e006f) > #5 in LwpObjectID::obj(VO_TYPE) const at lotuswordpro/source/filter/lwpobjid.cxx:190:47 (instdir/program/liblwpftlo.so +0xa00679) > #6 in LwpParaStyle::Apply(XFParaStyle*) at lotuswordpro/source/filter/lwpparastyle.cxx:151:62 (instdir/program/liblwpftlo.so +0xa92be0) > #7 in LwpParaStyle::RegisterStyle() at lotuswordpro/source/filter/lwpparastyle.cxx:673:5 (instdir/program/liblwpftlo.so +0xa9e649) > #8 in LwpDocument::RegisterTextStyles() at lotuswordpro/source/filter/lwpdoc.cxx:242:25 (instdir/program/liblwpftlo.so +0x797af6) > #9 in LwpDocument::RegisterStyle() at lotuswordpro/source/filter/lwpdoc.cxx:211:5 (instdir/program/liblwpftlo.so +0x794fd6) > #10 in LwpObject::DoRegisterStyle() at lotuswordpro/inc/lwpobj.hxx:109:9 (instdir/program/liblwpftlo.so +0x7001ea) > #11 in LwpDocSock::RegisterStyle() at lotuswordpro/source/filter/lwpdoc.cxx:807:15 (instdir/program/liblwpftlo.so +0x7a36cf) > #12 in LwpObject::DoRegisterStyle() at lotuswordpro/inc/lwpobj.hxx:109:9 (instdir/program/liblwpftlo.so +0x7001ea) > #13 in LwpDocument::RegisterStyle() at lotuswordpro/source/filter/lwpdoc.cxx:222:19 (instdir/program/liblwpftlo.so +0x7953d4) > #14 in LwpObject::DoRegisterStyle() at lotuswordpro/inc/lwpobj.hxx:109:9 (instdir/program/liblwpftlo.so +0x7001ea) > #15 in Lwp9Reader::ParseDocument() at lotuswordpro/source/filter/lwp9reader.cxx:154:10 (instdir/program/liblwpftlo.so +0x6f4c77) > #16 in Lwp9Reader::Read() at lotuswordpro/source/filter/lwp9reader.cxx:90:20 (instdir/program/liblwpftlo.so +0x6f3f2c) > #17 in ReadWordproFile(SvStream&, com::sun::star::uno::Reference<com::sun::star::xml::sax::XDocumentHandler> const&) at lotuswordpro/source/filter/lwpfilter.cxx:215:33 (instdir/program/liblwpftlo.so +0x82436d) > #18 in LotusWordProImportFilter::importImpl(com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&) at lotuswordpro/source/filter/LotusWordProImportFilter.cxx:75:14 (instdir/program/liblwpftlo.so +0x6e4a3a) > #19 in LotusWordProImportFilter::filter(com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&) at lotuswordpro/source/filter/LotusWordProImportFilter.cxx:87:12 (instdir/program/liblwpftlo.so +0x6e4cfa) > #20 in (anonymous namespace)::LotusWordProTest::load(rtl::OUString const&, rtl::OUString const&, rtl::OUString const&, SfxFilterFlags, SotClipboardFormatId, unsigned int) at lotuswordpro/qa/cppunit/test_lotuswordpro.cxx:59:27 (workdir/LinkTarget/CppunitTest/libtest_lotuswordpro_test_lotuswordpro.so +0x14a52) > #21 in test::FiltersTest::recursiveScan(test::filterStatus, rtl::OUString const&, rtl::OUString const&, rtl::OUString const&, SfxFilterFlags, SotClipboardFormatId, unsigned int, bool) at unotest/source/cpp/filters-test.cxx:130:20 (workdir/LinkTarget/CppunitTest/../Library/libunotest.so +0x5724c) > #22 in test::FiltersTest::testDir(rtl::OUString const&, rtl::OUString const&, rtl::OUString const&, SfxFilterFlags, SotClipboardFormatId, unsigned int, bool) at unotest/source/cpp/filters-test.cxx:158:5 (workdir/LinkTarget/CppunitTest/../Library/libunotest.so +0x580e7) > #23 in (anonymous namespace)::LotusWordProTest::test() at lotuswordpro/qa/cppunit/test_lotuswordpro.cxx:64:9 (workdir/LinkTarget/CppunitTest/libtest_lotuswordpro_test_lotuswordpro.so +0x153d4) > #24 in void std::__invoke_impl<void, void ((anonymous namespace)::LotusWordProTest::*&)(), (anonymous namespace)::LotusWordProTest*&>(std::__invoke_memfun_deref, void ((anonymous namespace)::LotusWordProTest::*&)(), (anonymous namespace)::LotusWordProTest*&) at /usr/lib/gcc/x86_64-redhat-linux/8/../../../../include/c++/8/bits/invoke.h:73:14 (workdir/LinkTarget/CppunitTest/libtest_lotuswordpro_test_lotuswordpro.so +0x17fcd) > #25 in std::__invoke_result<void ((anonymous namespace)::LotusWordProTest::*&)(), (anonymous namespace)::LotusWordProTest*&>::type std::__invoke<void ((anonymous namespace)::LotusWordProTest::*&)(), (anonymous namespace)::LotusWordProTest*&>(void ((anonymous namespace)::LotusWordProTest::*&)(), (anonymous namespace)::LotusWordProTest*&) at /usr/lib/gcc/x86_64-redhat-linux/8/../../../../include/c++/8/bits/invoke.h:95:14 (workdir/LinkTarget/CppunitTest/libtest_lotuswordpro_test_lotuswordpro.so +0x17c6b) > #26 in void std::_Bind<void ((anonymous namespace)::LotusWordProTest::* ((anonymous namespace)::LotusWordProTest*))()>::__call<void, 0ul>(std::tuple<>&&, std::_Index_tuple<0ul>) at /usr/lib/gcc/x86_64-redhat-linux/8/../../../../include/c++/8/functional:400:11 (workdir/LinkTarget/CppunitTest/libtest_lotuswordpro_test_lotuswordpro.so +0x17b28) > #27 in void std::_Bind<void ((anonymous namespace)::LotusWordProTest::* ((anonymous namespace)::LotusWordProTest*))()>::operator()<void>() at /usr/lib/gcc/x86_64-redhat-linux/8/../../../../include/c++/8/functional:482:17 (workdir/LinkTarget/CppunitTest/libtest_lotuswordpro_test_lotuswordpro.so +0x178e5) > #28 in std::_Function_handler<void (), std::_Bind<void ((anonymous namespace)::LotusWordProTest::* ((anonymous namespace)::LotusWordProTest*))()> >::_M_invoke(std::_Any_data const&) at /usr/lib/gcc/x86_64-redhat-linux/8/../../../../include/c++/8/bits/std_function.h:297:2 (workdir/LinkTarget/CppunitTest/libtest_lotuswordpro_test_lotuswordpro.so +0x16bc6) > #29 in std::function<void ()>::operator()() const at /usr/lib/gcc/x86_64-redhat-linux/8/../../../../include/c++/8/bits/std_function.h:687:14 (workdir/LinkTarget/CppunitTest/libtest_lotuswordpro_test_lotuswordpro.so +0x23276) > #30 in CppUnit::TestCaller<(anonymous namespace)::LotusWordProTest>::runTest() at workdir/UnpackedTarball/cppunit/include/cppunit/TestCaller.h:175:7 (workdir/LinkTarget/CppunitTest/libtest_lotuswordpro_test_lotuswordpro.so +0x160c6) > #31 in CppUnit::TestCaseMethodFunctor::operator()() const at workdir/UnpackedTarball/cppunit/src/cppunit/TestCase.cpp:32:5 (workdir/UnpackedTarball/cppunit/src/cppunit/.libs/libcppunit-1.14.so.0 +0x22c1f1) > #32 in (anonymous namespace)::Protector::protect(CppUnit::Functor const&, CppUnit::ProtectorContext const&) at test/source/vclbootstrapprotector.cxx:49:14 (workdir/LinkTarget/Library/libvclbootstrapprotector.so +0x159a) > #33 in CppUnit::ProtectorChain::ProtectFunctor::operator()() const at workdir/UnpackedTarball/cppunit/src/cppunit/ProtectorChain.cpp:20:25 (workdir/UnpackedTarball/cppunit/src/cppunit/.libs/libcppunit-1.14.so.0 +0x20e64d) > #34 in (anonymous namespace)::Prot::protect(CppUnit::Functor const&, CppUnit::ProtectorContext const&) at unotest/source/cpp/unobootstrapprotector/unobootstrapprotector.cxx:88:12 (workdir/LinkTarget/Library/unobootstrapprotector.so +0x987a) > #35 in CppUnit::ProtectorChain::ProtectFunctor::operator()() const at workdir/UnpackedTarball/cppunit/src/cppunit/ProtectorChain.cpp:20:25 (workdir/UnpackedTarball/cppunit/src/cppunit/.libs/libcppunit-1.14.so.0 +0x20e64d) > #36 in (anonymous namespace)::Prot::protect(CppUnit::Functor const&, CppUnit::ProtectorContext const&) at unotest/source/cpp/unoexceptionprotector/unoexceptionprotector.cxx:63:16 (workdir/LinkTarget/Library/unoexceptionprotector.so +0x5000) > #37 in CppUnit::ProtectorChain::ProtectFunctor::operator()() const at workdir/UnpackedTarball/cppunit/src/cppunit/ProtectorChain.cpp:20:25 (workdir/UnpackedTarball/cppunit/src/cppunit/.libs/libcppunit-1.14.so.0 +0x20e64d) > #38 in CppUnit::DefaultProtector::protect(CppUnit::Functor const&, CppUnit::ProtectorContext const&) at workdir/UnpackedTarball/cppunit/src/cppunit/DefaultProtector.cpp:15:12 (workdir/UnpackedTarball/cppunit/src/cppunit/.libs/libcppunit-1.14.so.0 +0x1c6c51) > #39 in CppUnit::ProtectorChain::ProtectFunctor::operator()() const at workdir/UnpackedTarball/cppunit/src/cppunit/ProtectorChain.cpp:20:25 (workdir/UnpackedTarball/cppunit/src/cppunit/.libs/libcppunit-1.14.so.0 +0x20e64d) > #40 in CppUnit::ProtectorChain::protect(CppUnit::Functor const&, CppUnit::ProtectorContext const&) at workdir/UnpackedTarball/cppunit/src/cppunit/ProtectorChain.cpp:86:18 (workdir/UnpackedTarball/cppunit/src/cppunit/.libs/libcppunit-1.14.so.0 +0x2096b8) > #41 in CppUnit::TestResult::protect(CppUnit::Functor const&, CppUnit::Test*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) at workdir/UnpackedTarball/cppunit/src/cppunit/TestResult.cpp:182:28 (workdir/UnpackedTarball/cppunit/src/cppunit/.libs/libcppunit-1.14.so.0 +0x26c3e4) > #42 in CppUnit::TestCase::run(CppUnit::TestResult*) at workdir/UnpackedTarball/cppunit/src/cppunit/TestCase.cpp:91:13 (workdir/UnpackedTarball/cppunit/src/cppunit/.libs/libcppunit-1.14.so.0 +0x22b1fb) > #43 in CppUnit::TestComposite::doRunChildTests(CppUnit::TestResult*) at workdir/UnpackedTarball/cppunit/src/cppunit/TestComposite.cpp:64:30 (workdir/UnpackedTarball/cppunit/src/cppunit/.libs/libcppunit-1.14.so.0 +0x22db43) > #44 in CppUnit::TestComposite::run(CppUnit::TestResult*) at workdir/UnpackedTarball/cppunit/src/cppunit/TestComposite.cpp:23:3 (workdir/UnpackedTarball/cppunit/src/cppunit/.libs/libcppunit-1.14.so.0 +0x22d119) > #45 in CppUnit::TestComposite::doRunChildTests(CppUnit::TestResult*) at workdir/UnpackedTarball/cppunit/src/cppunit/TestComposite.cpp:64:30 (workdir/UnpackedTarball/cppunit/src/cppunit/.libs/libcppunit-1.14.so.0 +0x22db43) > #46 in CppUnit::TestComposite::run(CppUnit::TestResult*) at workdir/UnpackedTarball/cppunit/src/cppunit/TestComposite.cpp:23:3 (workdir/UnpackedTarball/cppunit/src/cppunit/.libs/libcppunit-1.14.so.0 +0x22d119) > #47 in CppUnit::TestRunner::WrappingSuite::run(CppUnit::TestResult*) at workdir/UnpackedTarball/cppunit/src/cppunit/TestRunner.cpp:47:27 (workdir/UnpackedTarball/cppunit/src/cppunit/.libs/libcppunit-1.14.so.0 +0x28b6c2) > #48 in CppUnit::TestResult::runTest(CppUnit::Test*) at workdir/UnpackedTarball/cppunit/src/cppunit/TestResult.cpp:149:9 (workdir/UnpackedTarball/cppunit/src/cppunit/.libs/libcppunit-1.14.so.0 +0x26b715) > #49 in CppUnit::TestRunner::run(CppUnit::TestResult&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) at workdir/UnpackedTarball/cppunit/src/cppunit/TestRunner.cpp:96:14 (workdir/UnpackedTarball/cppunit/src/cppunit/.libs/libcppunit-1.14.so.0 +0x28c103) > #50 in (anonymous namespace)::ProtectedFixtureFunctor::run() const at sal/cppunittester/cppunittester.cxx:316:20 (workdir/LinkTarget/Executable/cppunittester +0x440697) > #51 in sal_main() at sal/cppunittester/cppunittester.cxx:466:20 (workdir/LinkTarget/Executable/cppunittester +0x43e2fc) > #52 in main at sal/cppunittester/cppunittester.cxx:373:1 (workdir/LinkTarget/Executable/cppunittester +0x43d90e) > #53 in __libc_start_main at /usr/src/debug/glibc-2.27-74-g68c1bf8097/csu/../csu/libc-start.c:308:16 (/lib64/libc.so.6 +0x2324a) > #54 in _start at <null> (workdir/LinkTarget/Executable/cppunittester +0x4172a9) Change-Id: Idabb149df922432b48330d3914d1467b6ab01580 Reviewed-on: https://gerrit.libreoffice.org/58932 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2018-08-14LwpPageLayout::GetPageNumber returns sal_Int32Stephan Bergmann
...so assume this code (esp. the following nPageNumber>0 check) wants to actually use sal_Int32 rather than wrap-around (cf. the subtraction of 1) sal_uInt16. (The code was like that ever since its introduction with cc316b39d9110c536e1758a4f814738ca209bb02 "Port of Lotus Word Pro filter, by Fong Lin and Noel Power".) Found with new Clang -fsanitize=implicit-conversion during CppunitTest_lotuswordpro_test_lotuswordpro: > lotuswordpro/source/filter/lwppagelayout.cxx:447:23: runtime error: implicit conversion from type 'int' of value -2 (32-bit, signed) to type 'sal_uInt16' (aka 'unsigned short') changed the value to 65534 (16-bit, unsigned) > #0 in LwpPageLayout::HasFillerPageText(LwpFoundry const*) at lotuswordpro/source/filter/lwppagelayout.cxx:447:23 (instdir/program/liblwpftlo.so +0xa23859) > #1 in LwpMasterPage::RegisterFillerPageStyle() at lotuswordpro/source/filter/lwpfribsection.cxx:434:23 (instdir/program/liblwpftlo.so +0x9051e4) > #2 in LwpMasterPage::RegisterMasterPage(LwpFrib*) at lotuswordpro/source/filter/lwpfribsection.cxx:288:17 (instdir/program/liblwpftlo.so +0x8fd614) > #3 in LwpFribPageBreak::RegisterBreakStyle(LwpPara*) at lotuswordpro/source/filter/lwpfribbreaks.cxx:125:24 (instdir/program/liblwpftlo.so +0x890392) > #4 in LwpFribPtr::RegisterStyle() at lotuswordpro/source/filter/lwpfribptr.cxx:440:24 (instdir/program/liblwpftlo.so +0x8f4ef9) > #5 in LwpPara::RegisterStyle() at lotuswordpro/source/filter/lwppara.cxx:684:13 (instdir/program/liblwpftlo.so +0xa7267f) > #6 in LwpObject::DoRegisterStyle() at lotuswordpro/inc/lwpobj.hxx:109:9 (instdir/program/liblwpftlo.so +0x7001ea) > #7 in LwpStory::RegisterStyle() at lotuswordpro/source/filter/lwpstory.cxx:146:16 (instdir/program/liblwpftlo.so +0xae61cf) > #8 in LwpObject::DoRegisterStyle() at lotuswordpro/inc/lwpobj.hxx:109:9 (instdir/program/liblwpftlo.so +0x7001ea) > #9 in LwpFooterLayout::RegisterStyle(XFMasterPage*) at lotuswordpro/source/filter/lwppagelayout.cxx:1042:17 (instdir/program/liblwpftlo.so +0xa1f491) > #10 in LwpPageLayout::RegisterStyle() at lotuswordpro/source/filter/lwppagelayout.cxx:354:24 (instdir/program/liblwpftlo.so +0xa1d717) > #11 in LwpObject::DoRegisterStyle() at lotuswordpro/inc/lwpobj.hxx:109:9 (instdir/program/liblwpftlo.so +0x7001ea) > #12 in LwpHeadLayout::RegisterStyle() at lotuswordpro/source/filter/lwplayout.cxx:520:22 (instdir/program/liblwpftlo.so +0x96e987) > #13 in LwpObject::DoRegisterStyle() at lotuswordpro/inc/lwpobj.hxx:109:9 (instdir/program/liblwpftlo.so +0x7001ea) > #14 in LwpHeadLayout::RegisterStyle() at lotuswordpro/source/filter/lwplayout.cxx:520:22 (instdir/program/liblwpftlo.so +0x96e987) > #15 in LwpObject::DoRegisterStyle() at lotuswordpro/inc/lwpobj.hxx:109:9 (instdir/program/liblwpftlo.so +0x7001ea) > #16 in LwpFoundry::RegisterAllLayouts() at lotuswordpro/source/filter/lwpfoundry.cxx:182:17 (instdir/program/liblwpftlo.so +0x852894) > #17 in LwpDocument::RegisterLayoutStyles() at lotuswordpro/source/filter/lwpdoc.cxx:257:26 (instdir/program/liblwpftlo.so +0x7980b9) > #18 in LwpDocument::RegisterStyle() at lotuswordpro/source/filter/lwpdoc.cxx:212:5 (instdir/program/liblwpftlo.so +0x795056) > #19 in LwpObject::DoRegisterStyle() at lotuswordpro/inc/lwpobj.hxx:109:9 (instdir/program/liblwpftlo.so +0x7001ea) > #20 in LwpDocSock::RegisterStyle() at lotuswordpro/source/filter/lwpdoc.cxx:807:15 (instdir/program/liblwpftlo.so +0x7a36cf) > #21 in LwpObject::DoRegisterStyle() at lotuswordpro/inc/lwpobj.hxx:109:9 (instdir/program/liblwpftlo.so +0x7001ea) > #22 in LwpDocument::RegisterStyle() at lotuswordpro/source/filter/lwpdoc.cxx:222:19 (instdir/program/liblwpftlo.so +0x7953d4) > #23 in LwpObject::DoRegisterStyle() at lotuswordpro/inc/lwpobj.hxx:109:9 (instdir/program/liblwpftlo.so +0x7001ea) > #24 in Lwp9Reader::ParseDocument() at lotuswordpro/source/filter/lwp9reader.cxx:154:10 (instdir/program/liblwpftlo.so +0x6f4c77) > #25 in Lwp9Reader::Read() at lotuswordpro/source/filter/lwp9reader.cxx:90:20 (instdir/program/liblwpftlo.so +0x6f3f2c) > #26 in ReadWordproFile(SvStream&, com::sun::star::uno::Reference<com::sun::star::xml::sax::XDocumentHandler> const&) at lotuswordpro/source/filter/lwpfilter.cxx:215:33 (instdir/program/liblwpftlo.so +0x82436d) > #27 in LotusWordProImportFilter::importImpl(com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&) at lotuswordpro/source/filter/LotusWordProImportFilter.cxx:75:14 (instdir/program/liblwpftlo.so +0x6e4a3a) > #28 in LotusWordProImportFilter::filter(com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&) at lotuswordpro/source/filter/LotusWordProImportFilter.cxx:87:12 (instdir/program/liblwpftlo.so +0x6e4cfa) > #29 in (anonymous namespace)::LotusWordProTest::load(rtl::OUString const&, rtl::OUString const&, rtl::OUString const&, SfxFilterFlags, SotClipboardFormatId, unsigned int) at lotuswordpro/qa/cppunit/test_lotuswordpro.cxx:59:27 (workdir/LinkTarget/CppunitTest/libtest_lotuswordpro_test_lotuswordpro.so +0x14a52) > #30 in test::FiltersTest::recursiveScan(test::filterStatus, rtl::OUString const&, rtl::OUString const&, rtl::OUString const&, SfxFilterFlags, SotClipboardFormatId, unsigned int, bool) at unotest/source/cpp/filters-test.cxx:130:20 (workdir/LinkTarget/CppunitTest/../Library/libunotest.so +0x5724c) > #31 in test::FiltersTest::testDir(rtl::OUString const&, rtl::OUString const&, rtl::OUString const&, SfxFilterFlags, SotClipboardFormatId, unsigned int, bool) at unotest/source/cpp/filters-test.cxx:158:5 (workdir/LinkTarget/CppunitTest/../Library/libunotest.so +0x580e7) > #32 in (anonymous namespace)::LotusWordProTest::test() at lotuswordpro/qa/cppunit/test_lotuswordpro.cxx:64:9 (workdir/LinkTarget/CppunitTest/libtest_lotuswordpro_test_lotuswordpro.so +0x153d4) > #33 in void std::__invoke_impl<void, void ((anonymous namespace)::LotusWordProTest::*&)(), (anonymous namespace)::LotusWordProTest*&>(std::__invoke_memfun_deref, void ((anonymous namespace)::LotusWordProTest::*&)(), (anonymous namespace)::LotusWordProTest*&) at /usr/lib/gcc/x86_64-redhat-linux/8/../../../../include/c++/8/bits/invoke.h:73:14 (workdir/LinkTarget/CppunitTest/libtest_lotuswordpro_test_lotuswordpro.so +0x17fcd) > #34 in std::__invoke_result<void ((anonymous namespace)::LotusWordProTest::*&)(), (anonymous namespace)::LotusWordProTest*&>::type std::__invoke<void ((anonymous namespace)::LotusWordProTest::*&)(), (anonymous namespace)::LotusWordProTest*&>(void ((anonymous namespace)::LotusWordProTest::*&)(), (anonymous namespace)::LotusWordProTest*&) at /usr/lib/gcc/x86_64-redhat-linux/8/../../../../include/c++/8/bits/invoke.h:95:14 (workdir/LinkTarget/CppunitTest/libtest_lotuswordpro_test_lotuswordpro.so +0x17c6b) > #35 in void std::_Bind<void ((anonymous namespace)::LotusWordProTest::* ((anonymous namespace)::LotusWordProTest*))()>::__call<void, 0ul>(std::tuple<>&&, std::_Index_tuple<0ul>) at /usr/lib/gcc/x86_64-redhat-linux/8/../../../../include/c++/8/functional:400:11 (workdir/LinkTarget/CppunitTest/libtest_lotuswordpro_test_lotuswordpro.so +0x17b28) > #36 in void std::_Bind<void ((anonymous namespace)::LotusWordProTest::* ((anonymous namespace)::LotusWordProTest*))()>::operator()<void>() at /usr/lib/gcc/x86_64-redhat-linux/8/../../../../include/c++/8/functional:482:17 (workdir/LinkTarget/CppunitTest/libtest_lotuswordpro_test_lotuswordpro.so +0x178e5) > #37 in std::_Function_handler<void (), std::_Bind<void ((anonymous namespace)::LotusWordProTest::* ((anonymous namespace)::LotusWordProTest*))()> >::_M_invoke(std::_Any_data const&) at /usr/lib/gcc/x86_64-redhat-linux/8/../../../../include/c++/8/bits/std_function.h:297:2 (workdir/LinkTarget/CppunitTest/libtest_lotuswordpro_test_lotuswordpro.so +0x16bc6) > #38 in std::function<void ()>::operator()() const at /usr/lib/gcc/x86_64-redhat-linux/8/../../../../include/c++/8/bits/std_function.h:687:14 (workdir/LinkTarget/CppunitTest/libtest_lotuswordpro_test_lotuswordpro.so +0x23276) > #39 in CppUnit::TestCaller<(anonymous namespace)::LotusWordProTest>::runTest() at workdir/UnpackedTarball/cppunit/include/cppunit/TestCaller.h:175:7 (workdir/LinkTarget/CppunitTest/libtest_lotuswordpro_test_lotuswordpro.so +0x160c6) > #40 in CppUnit::TestCaseMethodFunctor::operator()() const at workdir/UnpackedTarball/cppunit/src/cppunit/TestCase.cpp:32:5 (workdir/UnpackedTarball/cppunit/src/cppunit/.libs/libcppunit-1.14.so.0 +0x22c1f1) > #41 in (anonymous namespace)::Protector::protect(CppUnit::Functor const&, CppUnit::ProtectorContext const&) at test/source/vclbootstrapprotector.cxx:49:14 (workdir/LinkTarget/Library/libvclbootstrapprotector.so +0x159a) > #42 in CppUnit::ProtectorChain::ProtectFunctor::operator()() const at workdir/UnpackedTarball/cppunit/src/cppunit/ProtectorChain.cpp:20:25 (workdir/UnpackedTarball/cppunit/src/cppunit/.libs/libcppunit-1.14.so.0 +0x20e64d) > #43 in (anonymous namespace)::Prot::protect(CppUnit::Functor const&, CppUnit::ProtectorContext const&) at unotest/source/cpp/unobootstrapprotector/unobootstrapprotector.cxx:88:12 (workdir/LinkTarget/Library/unobootstrapprotector.so +0x987a) > #44 in CppUnit::ProtectorChain::ProtectFunctor::operator()() const at workdir/UnpackedTarball/cppunit/src/cppunit/ProtectorChain.cpp:20:25 (workdir/UnpackedTarball/cppunit/src/cppunit/.libs/libcppunit-1.14.so.0 +0x20e64d) > #45 in (anonymous namespace)::Prot::protect(CppUnit::Functor const&, CppUnit::ProtectorContext const&) at unotest/source/cpp/unoexceptionprotector/unoexceptionprotector.cxx:63:16 (workdir/LinkTarget/Library/unoexceptionprotector.so +0x5000) > #46 in CppUnit::ProtectorChain::ProtectFunctor::operator()() const at workdir/UnpackedTarball/cppunit/src/cppunit/ProtectorChain.cpp:20:25 (workdir/UnpackedTarball/cppunit/src/cppunit/.libs/libcppunit-1.14.so.0 +0x20e64d) > #47 in CppUnit::DefaultProtector::protect(CppUnit::Functor const&, CppUnit::ProtectorContext const&) at workdir/UnpackedTarball/cppunit/src/cppunit/DefaultProtector.cpp:15:12 (workdir/UnpackedTarball/cppunit/src/cppunit/.libs/libcppunit-1.14.so.0 +0x1c6c51) > #48 in CppUnit::ProtectorChain::ProtectFunctor::operator()() const at workdir/UnpackedTarball/cppunit/src/cppunit/ProtectorChain.cpp:20:25 (workdir/UnpackedTarball/cppunit/src/cppunit/.libs/libcppunit-1.14.so.0 +0x20e64d) > #49 in CppUnit::ProtectorChain::protect(CppUnit::Functor const&, CppUnit::ProtectorContext const&) at workdir/UnpackedTarball/cppunit/src/cppunit/ProtectorChain.cpp:86:18 (workdir/UnpackedTarball/cppunit/src/cppunit/.libs/libcppunit-1.14.so.0 +0x2096b8) > #50 in CppUnit::TestResult::protect(CppUnit::Functor const&, CppUnit::Test*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) at workdir/UnpackedTarball/cppunit/src/cppunit/TestResult.cpp:182:28 (workdir/UnpackedTarball/cppunit/src/cppunit/.libs/libcppunit-1.14.so.0 +0x26c3e4) > #51 in CppUnit::TestCase::run(CppUnit::TestResult*) at workdir/UnpackedTarball/cppunit/src/cppunit/TestCase.cpp:91:13 (workdir/UnpackedTarball/cppunit/src/cppunit/.libs/libcppunit-1.14.so.0 +0x22b1fb) > #52 in CppUnit::TestComposite::doRunChildTests(CppUnit::TestResult*) at workdir/UnpackedTarball/cppunit/src/cppunit/TestComposite.cpp:64:30 (workdir/UnpackedTarball/cppunit/src/cppunit/.libs/libcppunit-1.14.so.0 +0x22db43) > #53 in CppUnit::TestComposite::run(CppUnit::TestResult*) at workdir/UnpackedTarball/cppunit/src/cppunit/TestComposite.cpp:23:3 (workdir/UnpackedTarball/cppunit/src/cppunit/.libs/libcppunit-1.14.so.0 +0x22d119) > #54 in CppUnit::TestComposite::doRunChildTests(CppUnit::TestResult*) at workdir/UnpackedTarball/cppunit/src/cppunit/TestComposite.cpp:64:30 (workdir/UnpackedTarball/cppunit/src/cppunit/.libs/libcppunit-1.14.so.0 +0x22db43) > #55 in CppUnit::TestComposite::run(CppUnit::TestResult*) at workdir/UnpackedTarball/cppunit/src/cppunit/TestComposite.cpp:23:3 (workdir/UnpackedTarball/cppunit/src/cppunit/.libs/libcppunit-1.14.so.0 +0x22d119) > #56 in CppUnit::TestRunner::WrappingSuite::run(CppUnit::TestResult*) at workdir/UnpackedTarball/cppunit/src/cppunit/TestRunner.cpp:47:27 (workdir/UnpackedTarball/cppunit/src/cppunit/.libs/libcppunit-1.14.so.0 +0x28b6c2) > #57 in CppUnit::TestResult::runTest(CppUnit::Test*) at workdir/UnpackedTarball/cppunit/src/cppunit/TestResult.cpp:149:9 (workdir/UnpackedTarball/cppunit/src/cppunit/.libs/libcppunit-1.14.so.0 +0x26b715) > #58 in CppUnit::TestRunner::run(CppUnit::TestResult&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) at workdir/UnpackedTarball/cppunit/src/cppunit/TestRunner.cpp:96:14 (workdir/UnpackedTarball/cppunit/src/cppunit/.libs/libcppunit-1.14.so.0 +0x28c103) > #59 in (anonymous namespace)::ProtectedFixtureFunctor::run() const at sal/cppunittester/cppunittester.cxx:316:20 (workdir/LinkTarget/Executable/cppunittester +0x440697) > #60 in sal_main() at sal/cppunittester/cppunittester.cxx:466:20 (workdir/LinkTarget/Executable/cppunittester +0x43e2fc) > #61 in main at sal/cppunittester/cppunittester.cxx:373:1 (workdir/LinkTarget/Executable/cppunittester +0x43d90e) > #62 in __libc_start_main at /usr/src/debug/glibc-2.27-74-g68c1bf8097/csu/../csu/libc-start.c:308:16 (/lib64/libc.so.6 +0x2324a) > #63 in _start at <null> (workdir/LinkTarget/Executable/cppunittester +0x4172a9) Change-Id: I1e7458f831619ddf78d654656cdd9edcaf341aaa Reviewed-on: https://gerrit.libreoffice.org/58928 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2018-08-14SvxCharSetColorItem can be removedNoel Grandin
and just use SvxColorItem in its stead, all of it's special functionality has been removed over time Change-Id: I61a4d1fb92d9dccbdfc5bbb6d1a41692b83eb320 Reviewed-on: https://gerrit.libreoffice.org/58938 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-08-14create appendCopy method in OUStringBufferNoel Grandin
so we can avoid temporary copies when appending a substring of an OUString to the buffer. I would have preferred to call the method just "append" but that results in ambiguous method errors when the callsite is something like sal_Int32 n; OUStringBuffer s; s.append(n, 10); I'm not sure why Change-Id: I6b5b6641fcb5b26ce2269f89ef06e03c0b6aa76f Reviewed-on: https://gerrit.libreoffice.org/58666 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>