summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2019-10-04loplugin:unusedfieldsNoel Grandin
Change-Id: If0df5216dccd2c0a7aa790668471993f5d4d5d32 Reviewed-on: https://gerrit.libreoffice.org/80183 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-10-04loplugin:unusedmethodsNoel Grandin
Change-Id: Idd98dc9e1090a6b09124c80eed5a878e5e966cfc Reviewed-on: https://gerrit.libreoffice.org/80182 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-10-04vcl metafile dump: a relative file path is not a good defaultMiklos Vajna
SvFileStream wants an absolute file URL, so improve the default minimally and also assert that opening the file worked, so the dump is not just silently discarded. Change-Id: Iaea45603db65aff475051ea83ba1b45992d53590 Reviewed-on: https://gerrit.libreoffice.org/80195 Reviewed-by: Miklos Vajna <vmiklos@collabora.com> Tested-by: Jenkins
2019-10-04sw: add DocumentContentOperationsManager::DeleteDummyChar()Michael Stahl
... and lcl_RemoveFieldMarks() uses it; this avoids the problem that lcl_CalcBreaks() would of course remove the dummy character from the deletion range. Change-Id: Iba0f7901b9efe4af273e17c58c6b40d4fd783efd Reviewed-on: https://gerrit.libreoffice.org/80069 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.stahl@cib.de>
2019-10-04use normal VirtualDevice ctor, not the obscure SystemGraphicsData variantCaolán McNamara
Change-Id: I4be43f692a29b1b1ee3f96bb34133f3ef0cf4eb7 Reviewed-on: https://gerrit.libreoffice.org/80151 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
2019-10-04related tdf#99602 writerfilter: deferredCharProps unhandled in StylesJustin Luth
...so don't add deferred properties during style import. Otherwise, the first paragraph picks up those attributes and applies them. Regression from 2012 - only affects subscript/superscript. Truly fixing this for Character Styles will be tricky, because it depends on the final fontsize - regardless of where it is set. So at the style level, the deferred property needs to be percentized based on SOMETHING, and then at appendText time the fontsize needs to be determined. If escapement is inherited from a style, then the escapement needs to be converted BACK into pointsize (based on style charsize), and then the final percentage can be calculated and directly applied. Yuck. I'm inclined to treat charstyle escapement like pre-2012, which just assigned default values and ignored the actual/given amount. Change-Id: I8e3783533ec18740e1c7d0b36c58b6c7e8ce107f Reviewed-on: https://gerrit.libreoffice.org/80178 Tested-by: Jenkins Reviewed-by: Justin Luth <justin_luth@sil.org>
2019-10-04Revert "uitest: make child soffice process die when parent dies"Stephan Bergmann
This reverts commit d35840a2111beafe018851314a624e268e3cde6a, now that 43aef04d77aafb9d055957642e62b559231f3711 "Reliably wait for soffice to terminate" makes sure that no soffice-related processes are left behind by UITests. Using PR_SET_PDEATHSIG had the following drawbacks: * It defeats debugging if a runaway process is forcefully killed by the test framework. (And there are already higher-layer mechanisms in place for the reliable termination of runaway tinderbox builds, see the commit message of 43aef04d77aafb9d055957642e62b559231f3711 mentioned above.) * It is brittle in that it can terminate soffice-related processes too early, as the signal is sent as soon as the parent's thread that spawned the child (and not the parent process as a whole) terminates. * It is Linux-only. Change-Id: Ia07f5dbaafc824bad0dfbdb1a2aabe6d5508741b Reviewed-on: https://gerrit.libreoffice.org/80186 Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk> Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2019-10-04Deduplicate some serializer writing code, and simplify writing OStringMike Kaganski
Change-Id: I391f8cb499a83f1f774fdcaa794169a218bdc7e5 Reviewed-on: https://gerrit.libreoffice.org/80189 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2019-10-04sw: SwXTextPortion "TextFieldSeparator"Michael Stahl
Change-Id: I60a5036168287b1972c18e74431b7a6101d85304 Reviewed-on: https://gerrit.libreoffice.org/80052 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.stahl@cib.de>
2019-10-04sw: add CH_TXT_ATR_FIELDSEPMichael Stahl
... and handle it in obvious places. Change-Id: I7e9668994be0bd246f89ecc60fd0a42c240cce0c Reviewed-on: https://gerrit.libreoffice.org/80051 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.stahl@cib.de>
2019-10-04sw: add IDocumentMarkAccess::getFieldmarkAt()Michael Stahl
... and use it where the mark for a given CH_TXT_ATR_FIELD* is retrieved. Change-Id: Id58ac2967ab66be8a07586ef31cfe9e18a5f073d Reviewed-on: https://gerrit.libreoffice.org/80050 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.stahl@cib.de>
2019-10-04sw: add PortionType for fieldmarks for debuggingMichael Stahl
Change-Id: Ie263b09ac499cf30e294300b9ad609461f6ba0ac Reviewed-on: https://gerrit.libreoffice.org/80049 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.stahl@cib.de>
2019-10-04sw: remove dead branches in DocumentContentOperationsManagerMichael Stahl
Change-Id: I481b993c54fbd06d399193d0d75212599ca6fa78 Reviewed-on: https://gerrit.libreoffice.org/80048 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.stahl@cib.de>
2019-10-04sw: Overwrite() should ignore CH_TXT_ATR_INPUTFIELD*Michael Stahl
Change-Id: I8c5b3d8f9d3c16f45b1b958a566121308cbf0468 Reviewed-on: https://gerrit.libreoffice.org/80047 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.stahl@cib.de>
2019-10-04tdf#127941: Don't be _that_ eager to assert(!IsTextEdit());Jan Holesovsky
Turns out that this is still a condition that can happen regularly: * open Impress * click an object with a spelling mistake * press F7 to activate the spelling dialog (don't choose it from the menu) => assert() It is unclear how to sort this out correctly without refactoring, and also unclear how many other cases fail this condition, so let's change to SAL_WARN_IF for the moment. Change-Id: I97730cc93c86c279973702bbf4ddc922f1616c0b Reviewed-on: https://gerrit.libreoffice.org/80170 Tested-by: Jenkins Reviewed-by: Tor Lillqvist <tml@collabora.com>
2019-10-04use SfxUInt16Item for SID_METRIC_ITEMNoel Grandin
because we aren't using the array of values in SfxAllEnumItem Change-Id: I67ccb7737c52f9949495c53881e052d5005882aa Reviewed-on: https://gerrit.libreoffice.org/80165 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-10-04Resolves: tdf#127953 destroy shape before modelCaolán McNamara
Change-Id: I27bf76d8f7e196db57fa56181e06e578915b980d Reviewed-on: https://gerrit.libreoffice.org/80148 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
2019-10-04Reliably wait for soffice to terminateStephan Bergmann
...to avoid leftover soffice-related processes (oosplash, soffice.bin) from UITests, whose occasional presence on tinderboxes is discussed in the comments to <https://gerrit.libreoffice.org/#/c/79854/> "uitest: make child soffice process die when parent dies". Should sucha an soffice-related process fail to terminate, the UITest will now fail to terminate too, and (a) a developer can debug the hung processes or (b) a tinderbox can reliably kill all processes (cf. <https://gerrit.libreoffice.org/plugins/gitiles/lode/+/ bea0738dbadfe8784e5d3c00f533acf101db4e7e%5E%21> "tb_slave_wrapper: trap signal and kill -9 everything"). This is in line with the waiting in tearDown in unotest/source/python/org/libreoffice/unotest.py, and with the corresponding behavior of C++ and Java test frameworks in unotest. Change-Id: Ieb5c48964428bc05fa8c0f83af9426641d6df693 Reviewed-on: https://gerrit.libreoffice.org/80175 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2019-10-04Convert FSNS macro to constexpr functionMike Kaganski
Change-Id: I823305cdf746098762b77a53c5b93035cda7ec6f Reviewed-on: https://gerrit.libreoffice.org/80176 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2019-10-04find-unneeded-includes: ignore extra recommendationsGabor Kelemen
When IWYU is used to check cxx files it also checks associated hxx (but for .hxx -> .h too) files too and gives addition/removal recommendations There is no documented way of disabling this. Currently f-u-i does not differentiate between recommendations for the checked file and its header and prints everything. Which means sometimes I need to update .hxx files or blacklist warnings that interestingly are not shown when the same .hxx is checked with IWYU. The worst example is ucb/source/ucp/ftp/curl.hxx where IWYU gives recommendations for /usr/include/x86_64-linux-gnu/curl/curl.h Remedy this with considering the full filename + should add these lines: / should remove these lines: string as beginning of interesting recommendations Also remove some now obsolete blacklist entries from yaml files Change-Id: I1d139536992e4b56c699c31a4cc6491d373c2002 Reviewed-on: https://gerrit.libreoffice.org/80172 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
2019-10-04xmloff: create XMLDrawMetaExportOOO instances with an uno constructorMiklos Vajna
See tdf#74608 for motivation. Change-Id: Ia7ca975486be09acd2655c59b65e1f2a57774f32 Reviewed-on: https://gerrit.libreoffice.org/80166 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
2019-10-04use common PCH in sd/Luboš Luňák
Change-Id: I6dd2f7d54a2dd1d28a2b180887a97750ae8bce36 Reviewed-on: https://gerrit.libreoffice.org/79817 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2019-10-04use the common system PCH header in sw/Luboš Luňák
I suppose a number of these should even better use a shared PCH that also includes Writer headers. Change-Id: I3227bff71ddc2cd2e59ef18c1481606de16f9ea5 Reviewed-on: https://gerrit.libreoffice.org/79816 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2019-10-04add gbuild function for a common PCH and use it in sc/ and sax/Luboš Luňák
And make it simple to disable the whole feature by setting gb_DISABLE_PCH_REUSE=1, just in case. Also work around a possible BOOST_ALL_NO_LIB mismatch when using the common PCH. Change-Id: I96fd507edf1ada6242ac225026250e5a588d0193 Reviewed-on: https://gerrit.libreoffice.org/79365 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2019-10-04support reusing PCH if linktarget has additional reasonable definesLuboš Luňák
Where reasonable means they are from a list of defines known not to affect the system headers, and so they are safe to differ from how the PCH was built. A bit hackish, but works in practice. Change-Id: Ia00d2e4c56212aca05ba9d47abbb0d253998219f Reviewed-on: https://gerrit.libreoffice.org/79364 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2019-10-04add "system" PCH that contains often used system headers such as STLLuboš Luňák
The idea is that this PCH will be used as a fallback for linktargets that do not explicitly set their own PCH. Change-Id: If05d3f04893a386e5d991f913e094f49249c8f44 Reviewed-on: https://gerrit.libreoffice.org/79363 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2019-10-04add gb_LinkTarget_reuse_precompiled_headerLuboš Luňák
Similar to gb_LinkTarget_set_precompiled_header, but uses PCH created by another linktarget. This allows using a PCH even for linktargets that are small and creating their own dedicated PCHs is not worth it. The ultimate goal is having some default PCH that will be used if no explicit PCH is set. Change-Id: I4d72acdba7181bb5c7c1cdead776f548be36ba33 Reviewed-on: https://gerrit.libreoffice.org/79362 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2019-10-04filter arguments to MSVC to avoid the annoying D9025 warningLuboš Luňák
GCC/Clang do not bother with warning about overriding e.g. -O2 with -O0, AFAICT it's quite a common practice, and I really don't see any good reason for the warning, and even less so for not even being able to disable it. Without this, enabling SSE2/AVX2 would warn about overriding the default -arch:SSE (that's hardcoded by configure to be part of the compiler command). Change-Id: I9f9109b77de90085486bc2a98f1b453a41755e60 Reviewed-on: https://gerrit.libreoffice.org/80123 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2019-10-04common gbuild function for getting the correct windows compilerLuboš Luňák
Change-Id: Ia4001a4a3a0ac8490ab7104a25ccd688d18b8aa1 Reviewed-on: https://gerrit.libreoffice.org/80122 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2019-10-04do not abort build on PCH CXXFLAGS mismatch if set explicitlyLuboš Luňák
All the various gb_CppunitTest_add_cxxobjects variants actually allow passing additional CXXFLAGS. However, currently that would abort the build if PCH is used, because PCH requires the same CXXFLAGS. But if those extra CXXFLAGS are set explicitly, just skip using the PCH for that one file, as the mismatch is intentional. Change-Id: Iec4eed6d5f94c3e97ee461241203a84d21e8113c Reviewed-on: https://gerrit.libreoffice.org/80120 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2019-10-04always use gb_LinkTarget__get_cxxflags for cxxobjectsLuboš Luňák
E.g. gb_LinkTarget_add_exception_object adds it explicitly, but gb_LinkTarget_add_cxxobject itself does not, even though other variants (c,objc,objcxx) do it. This means that when compiling tools/qa/cppunit/test_cpuid.cxx it doesn't get the correct -O/-g flags, because CppunitTest_tools_test.mk uses gb_CppunitTest_add_cxxobjects to add $(INTRINSICS_CXXFLAGS). And that in its own actually should use the add_exception_objects variant, it didn't presumably because that one used to have cxxflags passing broken until I fixed it in 4bbdab901eb3c7d32d28910fb830f4b0422eee91. The usage in Library_cpp_uno.mk even explicitly works around the lack of debug symbols. Change-Id: Idc794e95bb817cd2ba2942b8e1f04f80d6722f97 Reviewed-on: https://gerrit.libreoffice.org/80119 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2019-10-04loplugin:methodcyclesNoel Grandin
Change-Id: Ie2eeba83bf176d5c2beadc4dc5286e827ddbadfc Reviewed-on: https://gerrit.libreoffice.org/80155 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-10-04loplugin:singlevalfieldsNoel Grandin
Change-Id: Ic74b400f0b929b4c57ad70d0b0936983a3d46360 Reviewed-on: https://gerrit.libreoffice.org/80154 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-10-04tdf#123341 XLSX: fix vertical alignment in commentsSzabolcs Toth
Import and export of VML element TextVAlign weren't supported by Calc, losing vertical aligment of the comments assigned to the spreadsheet cells. Change-Id: Ice70d3c65021902991ae869b6c60e30e4cdef8c3 Reviewed-on: https://gerrit.libreoffice.org/78816 Tested-by: Jenkins Reviewed-by: László Németh <nemeth@numbertext.org>
2019-10-04CppunitTest_sc_subsequent_export_test: correct link to namespace xSzabolcs Toth
This fix makes it possible to use assertXPath on VmlDrawing elements. Change-Id: I6feae279933f18209cda8193f73dec25acee3c71 Reviewed-on: https://gerrit.libreoffice.org/79520 Tested-by: Jenkins Reviewed-by: László Németh <nemeth@numbertext.org> Tested-by: László Németh <nemeth@numbertext.org>
2019-10-04Use function-local statics for SwStyleNameMapper lists/mapsMike Kaganski
Simplifies memory management; makes code clearer; in case of SwStyleNameMapper::getHashTable, avoids unnecessary filling of vIndexes at each call. Change-Id: I789bc0695d39dddcccac6cbc43fb48ab94f1321b Reviewed-on: https://gerrit.libreoffice.org/80174 Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com> Tested-by: Mike Kaganski <mike.kaganski@collabora.com>
2019-10-03Propagate soffice process failure from OfficeConnection's tearDownStephan Bergmann
...which had gone missing with 98cbfb087eed0d1defa6ef26385fcf47f95c05fc "uitest: kill the LibreOffice instance if it ignores terminate request". (None != 0 is true, so there is no need to map from ret_attr to ret, and that code can be cleaned up a bit.) Change-Id: Ic5e429d61a10a2bbd5c28aeee9d8465cb05c1e4a Reviewed-on: https://gerrit.libreoffice.org/80147 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2019-10-03Resolves: tdf#122011 fix ValidExternal() checkEike Rathke
Tab==-1 may have been the condition 10 years ago, but at least since commit 296baa2fb6dd4150a7855114093a9703cdc18b09 CommitDate: Tue Oct 5 18:14:37 2010 -0400 Ported calc-extref-interpreter-rework-*.diff from ooo-build. that's not the case anymore. The check is only used in ScRefTokenHelper::compileRangeRepresentation() that is only used when creating chart data sources and sequences, thus may have gone undetected. Change-Id: I2eeb20ec740d286918b6ea29c017c32d03f970ad Reviewed-on: https://gerrit.libreoffice.org/80163 Reviewed-by: Eike Rathke <erack@redhat.com> Tested-by: Jenkins
2019-10-03Following "Simplify a bit SfxAllEnumItem (svl)"Julien Nabet
As Mike suggested in: https://gerrit.libreoffice.org/#/c/80089/ Change-Id: Ie33cb1464907215ec23bf7be7cf5ce3fafdf6113 Reviewed-on: https://gerrit.libreoffice.org/80161 Tested-by: Jenkins Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
2019-10-03Fix --enable-gtk3-kde5Stephan Bergmann
...after 09f77e8ed51fc64fccc6a14e87eed48b2f15a28d "loplugin:unusedmethods" Change-Id: I6cc0aaf7e14b58311b236f0c7974fb2ccf8ee799 Reviewed-on: https://gerrit.libreoffice.org/80157 Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk> Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2019-10-03Removed duplicated includeAndrea Gelmini
Change-Id: Ib6756d3170efd044271eca1fea24baa33abc74d6 Reviewed-on: https://gerrit.libreoffice.org/80152 Tested-by: Jenkins Reviewed-by: Andrea Gelmini <andrea.gelmini@gelma.net>
2019-10-03factor out the actual surface creationCaolán McNamara
Change-Id: I77520b67b988f583dfd277e69d8181b9acdbd904 Reviewed-on: https://gerrit.libreoffice.org/80153 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
2019-10-03use "normal" VirtualDevice ctor, not the obscure SystemGraphicsData variantCaolán McNamara
Change-Id: Id40f4763c2d72c84471f77bf88b1a342186cfbd4 Reviewed-on: https://gerrit.libreoffice.org/80150 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
2019-10-03Resolves: tdf#120209 reload names if setting for their language changesCaolán McNamara
Change-Id: I386a598ae680c90e7d31bf821e7fb58391e5d45c Reviewed-on: https://gerrit.libreoffice.org/80130 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
2019-10-03Make sure TerminateListener doesn't outlive TransferableHelperStephan Bergmann
With <https://gerrit.libreoffice.org/#/c/80147/> "Propagate soffice process failure from OfficeConnection's tearDown" included, UITest_calc_tests2 would start to fail with > ==1492559==ERROR: AddressSanitizer: heap-use-after-free on address 0x6110009d26a8 at pc 0x7f38d09d1eda bp 0x7f3814e617f0 sp 0x7f3814e617e8 > READ of size 8 at 0x6110009d26a8 thread T44 (cppu_threadpool) > #0 in com::sun::star::uno::BaseReference::is() const at include/com/sun/star/uno/Reference.h:94:27 > #1 in TransferableHelper::ImplFlush() at vcl/source/treelist/transfer.cxx:518:22 > #2 in TransferableHelper::TerminateListener::notifyTermination(com::sun::star::lang::EventObject const&) at vcl/source/treelist/transfer.cxx:254:14 > #3 in framework::Desktop::impl_sendTerminateToClipboard() at framework/source/services/desktop.cxx:1655:24 > #4 in framework::Desktop::terminate() at framework/source/services/desktop.cxx:332:13 > #5 in gcc3::callVirtualMethod(void*, unsigned int, void*, _typelib_TypeDescriptionReference*, bool, unsigned long*, unsigned int, unsigned long*, double*) at bridges/source/cpp_uno/gcc3_linux_x86-64/callvirtualmethod.cxx:77:5 > #6 in cpp_call(bridges::cpp_uno::shared::UnoInterfaceProxy*, bridges::cpp_uno::shared::VtableSlot, _typelib_TypeDescriptionReference*, int, _typelib_MethodParameter*, void*, void**, _uno_Any**) at bridges/source/cpp_uno/gcc3_linux_x86-64/uno2cpp.cxx:233:13 > #7 in unoInterfaceProxyDispatch at bridges/source/cpp_uno/gcc3_linux_x86-64/uno2cpp.cxx:413:13 > #8 in binaryurp::IncomingRequest::execute_throw(binaryurp::BinaryAny*, std::__debug::vector<binaryurp::BinaryAny, std::allocator<binaryurp::BinaryAny> >*) const at binaryurp/source/incomingrequest.cxx:236:13 > #9 in binaryurp::IncomingRequest::execute() const at binaryurp/source/incomingrequest.cxx:79:26 > #10 in request at binaryurp/source/reader.cxx:85:9 > #11 in cppu_threadpool::JobQueue::enter(long, bool) at cppu/source/threadpool/jobqueue.cxx:107:17 > #12 in cppu_threadpool::ORequestThread::run() at cppu/source/threadpool/thread.cxx:165:31 > 0x6110009d26a8 is located 104 bytes inside of 216-byte region [0x6110009d2640,0x6110009d2718) > freed by thread T0 here: > #0 in free at /home/sbergman/github.com/llvm/llvm-project/compiler-rt/lib/asan/asan_malloc_linux.cpp:123:3 > #1 in rtl_freeMemory at sal/rtl/alloc_global.cxx:51:5 > #2 in cppu::OWeakObject::operator delete(void*) at include/cppuhelper/weak.hxx:87:11 > #3 in ScSelectionTransferObj::~ScSelectionTransferObj() at sc/source/ui/app/seltrans.cxx:149:1 > #4 in cppu::OWeakObject::release() at cppuhelper/source/weak.cxx:233:9 > #5 in cppu::WeakImplHelper<com::sun::star::datatransfer::XTransferable2, com::sun::star::datatransfer::clipboard::XClipboardOwner, com::sun::star::datatransfer::dnd::XDragSourceListener, com::sun::star::lang::XUnoTunnel>::release() at include/cppuhelper/implbase.hxx:115:62 > #6 in com::sun::star::uno::Reference<com::sun::star::datatransfer::XTransferable>::~Reference() at include/com/sun/star/uno/Reference.hxx:110:22 > #7 in vcl::GenericClipboard::~GenericClipboard() at vcl/source/components/dtranscomp.cxx:49:7 > #8 in cppu::OWeakObject::release() at cppuhelper/source/weak.cxx:233:9 > #9 in cppu::WeakComponentImplHelperBase::release() at cppuhelper/source/implbase.cxx:84:22 > #10 in cppu::PartialWeakComponentImplHelper<com::sun::star::datatransfer::clipboard::XSystemClipboard, com::sun::star::lang::XServiceInfo>::release() at include/cppuhelper/compbase.hxx:86:36 > #11 in com::sun::star::uno::Reference<com::sun::star::datatransfer::clipboard::XClipboard>::~Reference() at include/com/sun/star/uno/Reference.hxx:110:22 > #12 in ImplFrameData::~ImplFrameData() at vcl/inc/window.h:126:8 > #13 in vcl::Window::dispose() at vcl/source/window/window.cxx:550:9 > #14 in ImplBorderWindow::dispose() at vcl/source/window/brdwin.cxx:1664:18 > #15 in VclReferenceBase::disposeOnce() at vcl/source/outdev/vclreferencebase.cxx:38:5 > #16 in VclPtr<vcl::Window>::disposeAndClear() at include/vcl/vclptr.hxx:206:19 > #17 in vcl::Window::dispose() at vcl/source/window/window.cxx:517:34 > #18 in SystemWindow::dispose() at vcl/source/window/syswin.cxx:108:13 > #19 in WorkWindow::dispose() at vcl/source/window/wrkwin.cxx:128:19 > #20 in VclReferenceBase::disposeOnce() at vcl/source/outdev/vclreferencebase.cxx:38:5 > #21 in VclPtr<OutputDevice>::disposeAndClear() at include/vcl/vclptr.hxx:206:19 > #22 in VCLXWindow::dispose() at toolkit/source/awt/vclxwindow.cxx:939:21 > #23 in (anonymous namespace)::XFrameImpl::disposing() at framework/source/services/frame.cxx:2183:18 > #24 in cppu::WeakComponentImplHelperBase::dispose() at cppuhelper/source/implbase.cxx:102:17 > #25 in cppu::PartialWeakComponentImplHelper<com::sun::star::lang::XServiceInfo, com::sun::star::frame::XFrame2, com::sun::star::awt::XWindowListener, com::sun::star::awt::XTopWindowListener, com::sun::star::awt::XFocusListener, com::sun::star::document::XActionLockable, com::sun::star::util::XCloseable, com::sun::star::frame::XComponentLoader, com::sun::star::frame::XTitle, com::sun::star::frame::XTitleChangeBroadcaster, com::sun::star::beans::XPropertySet, com::sun::star::beans::XPropertySetInfo>::dispose() at include/cppuhelper/compbase.hxx:90:36 > #26 in (anonymous namespace)::XFrameImpl::close(unsigned char) at framework/source/services/frame.cxx:1728:5 > #27 in framework::pattern::frame::closeIt(com::sun::star::uno::Reference<com::sun::star::uno::XInterface> const&) at framework/source/inc/pattern/frame.hxx:62:21 > #28 in framework::CloseDispatcher::implts_closeFrame() at framework/source/dispatch/closedispatcher.cxx:492:10 > #29 in framework::CloseDispatcher::impl_asyncCallback(LinkParamNone*) at framework/source/dispatch/closedispatcher.cxx:371:20 > #30 in framework::CloseDispatcher::LinkStubimpl_asyncCallback(void*, LinkParamNone*) at framework/source/dispatch/closedispatcher.cxx:246:1 > #31 in Link<LinkParamNone*, void>::Call(LinkParamNone*) const at include/tools/link.hxx:112:45 > #32 in vcl::EventPoster::DoEvent_Impl(void*) at vcl/source/helper/evntpost.cxx:52:13 > #33 in vcl::EventPoster::LinkStubDoEvent_Impl(void*, void*) at vcl/source/helper/evntpost.cxx:48:1 > #34 in Link<void*, void>::Call(void*) const at include/tools/link.hxx:112:45 > #35 in ImplHandleUserEvent(ImplSVEvent*) at vcl/source/window/winproc.cxx:1960:30 > #36 in ImplWindowFrameProc(vcl::Window*, SalEvent, void const*) at vcl/source/window/winproc.cxx:2513:13 > #37 in SalFrame::CallCallback(SalEvent, void const*) const at vcl/inc/salframe.hxx:299:29 > #38 in SvpSalInstance::ProcessEvent(SalUserEventList::SalUserEvent) at vcl/headless/svpinst.cxx:283:22 > #39 in non-virtual thunk to SvpSalInstance::ProcessEvent(SalUserEventList::SalUserEvent) at vcl/headless/svpinst.cxx > #40 in SalUserEventList::DispatchUserEvents(bool) at vcl/source/app/salusereventlist.cxx:108:17 > #41 in SvpSalInstance::DoYield(bool, bool) at vcl/headless/svpinst.cxx:428:19 > #42 in ImplYield(bool, bool) at vcl/source/app/svapp.cxx:446:48 > #43 in Application::Yield() at vcl/source/app/svapp.cxx:510:5 > #44 in Application::Execute() at vcl/source/app/svapp.cxx:427:9 > #45 in desktop::Desktop::Main() at desktop/source/app/app.cxx:1620:17 > #46 in ImplSVMain() at vcl/source/app/svmain.cxx:190:35 Not sure if there is a better fix that would guarantee that mxTerminateListener can never be non-null in ~TransferableHelper. (It is cleared in TransferableHelper::lostOwnership, so maybe a call to that is missing somewhere, or there is a race here?) Change-Id: I6d190b9565a352c1d454fd66ba598bf1b9e8d875 Reviewed-on: https://gerrit.libreoffice.org/80149 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2019-10-03DOCX import: fix interaction of table and paragraph style in table cellsMiklos Vajna
Both table and paragraph styles can define paragraph properties for the content of table cells, e.g. line spacing. The intended behavior is that direct formatting has priority, then paragraph style, then the table styles. But in practice table style had priority: table style is turned into a set of property name-value pairs by writerfilter/ code, then this is applied to the content of a cell using SwXCell::setPropertyValue(). To make sure that direct-format-from-table-style doesn't override direct-format, there was already a check to not replace properties which are set directly. The problem is that in case the property value comes from a paragraph style, that's not direct and still should have priority over direct-format-from-table-style. Fix this by checking for custom values not only in the paragraph's item set, but also in its parents. Unless the parent would be the default style, which doesn't count. Or in case the paragraph is numbered, which complicates the situation, so leave that case unchanged. Change-Id: Ib554247cdc51fee0d9a6c7a26aecd38442dfa692 Reviewed-on: https://gerrit.libreoffice.org/80146 Reviewed-by: Miklos Vajna <vmiklos@collabora.com> Tested-by: Jenkins
2019-10-03loplugin:unnecessaryvirtualNoel Grandin
Change-Id: Ib329e251ee405f60568a2fea6cb93f54a84063cd Reviewed-on: https://gerrit.libreoffice.org/80144 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-10-03tdf#127766: Avoid ODR violation for class/struct FieldEntryTor Lillqvist
We had a class FieldEntry in registry/source/reflwrit.cxx and a struct FieldEntry in sd/source/filter/eppt/text.hxx. That causes problems when code from both is linked into one binary, as in the iOS and Android apps. The wrong FieldEntry destructor got called from the code in sd which of course lead to a crash. Fix by putting the one in registry into an unnamed namespace. (I put a large chunk of the source file in it while at it.) Change-Id: I1b32075f7aba256129b36ceb38eba605c882b9ff Reviewed-on: https://gerrit.libreoffice.org/80141 Tested-by: Jenkins Reviewed-by: Tor Lillqvist <tml@collabora.com>
2019-10-03loplugin:virtualdeadNoel Grandin
Change-Id: I86bae18ed2682871032aeb2a178f49f3e4601129 Reviewed-on: https://gerrit.libreoffice.org/80129 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-10-03loplugin:unusedmethodsNoel Grandin
Change-Id: I9790d053248ae6bd58ecc026c774014c4e5e04aa Reviewed-on: https://gerrit.libreoffice.org/80115 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>