summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2022-02-17svtools: fix lost replacement non-rendered graphic when updating it failsMiklos Vajna
This is similar to commit 8780fa41dcd164af244742461f4e57a4bcf4c7a4 (svtools: fix lost replacement grpahic when updating it via OLE fails, 2018-10-30), but that case was when we already had an old mpImpl->pGraphic, the updated failed and then we already lost the old one but didn't have a new one. Here what happened is that in case tools -> update -> update-all was used for an OLE object which had bad native data but a good preview, then the result was bad preview, depending on if you first scrolled to the OLE object to trigger rendering (good) or not (bad). The reason for this is that scrolling to the object calls GetGraphic(), which sets mpImpl->pGraphic using GetReplacement(bUpdate=false), which works, but svt::EmbeddedObjectRef::UpdateReplacement() calls GetReplacement(bUpdate=true). That explains why the update breaks the preview, but not when scrolling to it first. Fix the problem by improving svt::EmbeddedObjectRef::GetReplacement(): if getting an updated graphic fails, try to get a non-updated graphic. The result is that GetGraphic() after an UpdateReplacement() not only always return a non-nullptr Graphic, but also it's no longer of type None. Change-Id: I8e5ff4aaaefdc58e032b325bb4001f2a604ccc8a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/130086 Reviewed-by: Miklos Vajna <vmiklos@collabora.com> Tested-by: Jenkins
2022-02-17tdf#143148 Use pragma once instead of include guardspsidiumcode
Change-Id: I5a946c9db1b3ca91fa9d59d0d742c9b30782ed00 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/129978 Tested-by: Ilmari Lauhakangas <ilmari.lauhakangas@libreoffice.org> Reviewed-by: Ilmari Lauhakangas <ilmari.lauhakangas@libreoffice.org>
2022-02-17Revert "ODBC: fix signatures of Bulk, SpecialColumns et NativeSQL"Julien Nabet
This reverts partly commit 8942956e05f2208ffb666a2118f5db092c30ce6a. Reason, Lionel indicates: In general UnixODBC has to deal with more portability to more platforms, so I would tend to more follow their signatures than the ones of Microsoft, that has to deal with only Windows OS on less CPU ABIs. Change-Id: I8b8924d35aa86ac23a8191baa8584463941eddc9 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/130084 Reviewed-by: Lionel Mamane <lionel@mamane.lu> Tested-by: Jenkins
2022-02-17Bump Linux Clang baseline to 8.0.1Stephan Bergmann
...as discussed in the mail sub-thread starting at <https://lists.freedesktop.org/archives/libreoffice/2022-February/088476.html> "Also bump Linux Clang baseline to 12.0.1 (was: Bump --enable-compiler-plugins Clang baseline?)", and clean up newly-obsolete __clang_major__ checks Change-Id: Idacb9148b019c07e138277df3a085ba71c64a8e1 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/130028 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2022-02-17cid#1498146 silence Dereference after null checkCaolán McNamara
Change-Id: I55da3d7a2f1ccfa0c7120b6cff9ae95936f10e92 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/130078 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2022-02-17tdf#147196: Fix crash in editeng when applying title case formatMichael Warner
Fixes a possiblity of crashing when applying title case format using the edit engine. Change-Id: I4f44f635a1c96b021c084bb5bb973180744e56e2 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/129888 Tested-by: Jenkins Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
2022-02-17fix range checking in calls like ScDocument::GetNote()Luboš Luňák
Change-Id: I5612e765b3484b0515f4a16030ee19133ae3126a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/130076 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2022-02-17fix range checking when parsing Calc cell address (tdf#147451)Luboš Luňák
The document contains 'Sheet1', which Calc first tried to parse as a normal address, since it matches the format of e.g. 'XFD1'. The code parsed column into SCCOL (sal_Int16), which with 16k column limit overflowed and the code failed to detect the problem. Change-Id: I470db1b670dbff7bdc8013bede0a0b011e88c372 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/130073 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2022-02-17Refetch in case SwTextNode::InsertItem causes it to be deletedCaolán McNamara
Change-Id: Ie189ae4d37ffc33e58bb405f2521d1ae02a9997b Reviewed-on: https://gerrit.libreoffice.org/c/core/+/130072 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2022-02-17ScriptForge - (L10N): add new arguments to the service creationJean-Pierre Ledure
Actual arguments: - FolderName: the folder containing the PO-files - Locale: in the form la-CO (language-COUNTRY) - Encoding: The character set that should be used New arguments introduced by this commit: - Locale2: fallback Locale to select if Locale po file does not exist - Encoding2: Encoding of the 2nd Locale file Both new arguments are optional => no regression on existing scripts The arguments are available in Basic and Python equally. They may be passed as keyworg arguments in Python only. The default locale is now set to the "OfficeLocale", which is the locale in the user interface. NB: the distinction between SystemLocale and OfficeLocale is new in version 7.4. Change-Id: Ie3bc5d30193df35a8c6c1ec706e13eaea0050981 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/130074 Tested-by: Jean-Pierre Ledure <jp@ledure.be> Tested-by: Jenkins Reviewed-by: Jean-Pierre Ledure <jp@ledure.be>
2022-02-17make DBG_UNHANDLED_EXCEPTION no-op if SAL_LOG_WARN is not enabledLuboš Luňák
ee0e19296b959b4545b094f49a8b0c0b5463 make the macro unconditional, but that means it calls both DbgUnhandledException() and DbgGetCaughtException(), and then log it as SAL_WARN that's a no-op. With the document from tdf#105036 it added ~13% CPU time. Change-Id: I9360169e6e3976d40271bc5602765e56f58971d4 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/130069 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2022-02-17Revert "Resolves: tdf#147421 Do not use OUString::replaceAll() to strip ↵Mike Kaganski
null-bytes" This reverts commit 4b0c17609c2cca326bbcc9e8488a327a4a9ea952. Reason for revert: it's possible now to revert to previous simpler code after commit 4e4a01302a140d75a49055821b3197a2eda81db5 Related: tdf#147421: optimize O(U)String's replaceAll* Change-Id: Iaefac917afbc9c587e75c38457dd9ea87e4f5861 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/130017 Tested-by: Jenkins Reviewed-by: Eike Rathke <erack@redhat.com>
2022-02-17loplugin:unusedmethodsNoel Grandin
Change-Id: I58c60262ca543bafb4db4433dbb98b195f7571ea Reviewed-on: https://gerrit.libreoffice.org/c/core/+/130063 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2022-02-17tdf#147398: sc_ucalc_formula: Add unittestXisco Fauli
Change-Id: I28c8a4614edf577e1f8f101ba55327fd9f358973 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/130068 Tested-by: Jenkins Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
2022-02-17micro-optimisation: use std::moveNoel Grandin
Change-Id: I3acee160130185e65a154bf205fcdcf52b9f8797 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/130070 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2022-02-17tdf#145700 Improve lighting in extruded custom shapesRegina Henschel
The fix tries to make rendering similar to MS Office. The ODF standard follows closely the extrusion in RTF and MS binary format. Rendering uses the 3D scene engine. The main problem was, that the z-component of the direction was interpreted with opposite sign. As result the maximum of a light was at false position. Especially a direction from the observer to the object has produced a light behind the shape and so looks as if light was off. The wrong z-direction has produced lighting, which was less intensive than in MS Office. To compensate that, a third light source was added as workaround. That part is removed. Second problem was wrong use of 3D-scene D3DMaterialSpecularIntensity and D3DMaterialSpecular (= UI Specular color). That was not only wrong in OOo but in my previous patch too. D3DMaterialSpecularIntensity corresponds to MS property 'c3DShininess'. Relationship is Intensity = 2^c3DShininess. D3DMaterialSpecular is calculated from MS property c3DSpecularAmt and and c3DKeyIntensity. The light source was missing, but needs to be included, because c3DSpecularAmt is 'the ratio of incident to specular light that is reflected on a shape'. The old unit tests are adapted to this change. MS gives no information how it softens a light in case of harsh=false. ODF specifies it as 'implementation-defined'. The patch uses four additional lights, which have directions in 60° angle to the original light. The light intensity is distributed. That comes near to rendering in MS Office. Changing our 3D engine to provide 'soft' lights was not doable for me. The way MS Office renders a 'metal' surface is different from ODF specification. To distinguish the kinds, I have introduced a new property MetalType. I have discussed it with the ODF TC (see minutes from 2022-02-07) and got the advise to use namespaced values. Therefore the datatype is not boolean. The 'Surface' drop-down in the extrusion bar is changed to make the two kinds of rendering 'Metal' available to the user. If a user sets surface 'Metal' in the UI of MS Office, it sets not only fc3DMetallic but reduces the value of c3DDiffuseAmt in addition. Our 3D-scene engine has the corresponding ODF attribute dr3d:diffuse-color not implemented. To get a similar rendering I change the material color of the 3D-objects as workaround. Change-Id: Ia986b9c318b4c79688e0c0e2d858215b9d612fdc Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128449 Tested-by: Jenkins Reviewed-by: Regina Henschel <rb.henschel@t-online.de>
2022-02-17sw: one modeline should be enough for EMACSMichael Stahl
Change-Id: I888c35d7c5e5063b34b75f1564e67917d9d4583f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/130064 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.stahl@allotropia.de>
2022-02-17libxslt: upgrade to release 1.1.35Michael Stahl
Fixes CVE-2021-30560 Change-Id: I334662ddc40955780321133be9aee23858e04dc1 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/130065 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2022-02-17loplugin:unusedfieldsNoel Grandin
Change-Id: I07ec409ea3663e789b6505dbfc999666525ed97f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/130062 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2022-02-17loplugin:unnecessaryvirtualNoel Grandin
Change-Id: I44c70bd930380d0e3f76524f37e6276cf4faeccc Reviewed-on: https://gerrit.libreoffice.org/c/core/+/130061 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2022-02-17Parameter should apparently be of type sal_Int32Stephan Bergmann
It was like this ever since 969aac0edf437ec0cad0baadfde46188c4822161 "INTEGRATION: CWS pdf25", but the single caller of encodeBase64 passes a sal_Int32 value, and all use of i_nBufferLength in encodeBase64 are in sal_Int32-based computations. Change-Id: I2963a05bf5a83aaee25cdd71c11d28481b28061a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/130067 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2022-02-17Drop -Wdeclaration-after-statementStephan Bergmann
It was introduced, without a rationale, into unxgcc.mk in eb09adaa9a2accbdc3531bb96447c8e7fbb9f8a9 "Warn if declaration follows statement in C-files", then carried over to clang-cl (com_MSC_defs.mk) with 9055fb48402eaeb9ba876b7893e2f9a39fea06b1 "clang-cl: Enable more warnings etc. (like in the Clang/GCC case)", where it now started to cause > cppuhelper/source/findsofficepath.c(102,20): error: mixing declarations and code is incompatible with standards before C99 [-Werror,-Wdeclaration-after-statement] > const wchar_t* SUBKEYNAME = L"Software\\LibreOffice\\UNO\\InstallPath"; > ^ after <https://github.com/llvm/llvm-project/commit/118f966b46cfb60897b56a9878e1c68fd0e2afa4> "[clang][#51931] Enable -Wdeclaration-after-statement for all C versions". Lets remove it from all toolchain settings, there appears to be not much value anymore in such a warning about pre-C99 code. Change-Id: Id4669089e46c97aaa926e5bd202c36eb5984b837 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/130058 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2022-02-17optimize blank cell Excel export (tdf#133749)Luboš Luňák
The code in XclExpRow::Finalize() apparently creates an array of indexes for blank cells, and then uses it to efficiently write many blank cells (or whatever it's all exactly). But especially with huge sheets all this processing is basically repeatedly checking for all the blank cells at the end of the rows. Optimize this by calculating where the all the remaining blank cells start and process those more efficiently or sometimes even just plain ignore them. Possibly this could be optimized even more if I understood the code better, but this seems to be good enough. I've also changed some of the loops to use indexing instead of iterators, as libstdc++ debug iterators are horribly slow here (which possibly may even make a difference for Jenkins builds). Change-Id: Iafe36ccd2795a85b10b98cf84c041a7427aabc29 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/130046 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2022-02-17std::map -> std::unordered_mapLuboš Luňák
Change-Id: I70a039af151b7dd398d2665e6fc9bb825f719e39 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/130006 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2022-02-17Handle the possible case of broadcasted row block, tdf#119083 follow-upEike Rathke
Though unlikely and apparently not happening, the changed ScHint may theoretically notify for a block of rows, not just one address. Do not join out-of-band rows to the dirty header columns. Change-Id: I524bcbedf063fe6b5ff5b99bc984fcb9dc02b6ab Reviewed-on: https://gerrit.libreoffice.org/c/core/+/130054 Reviewed-by: Eike Rathke <erack@redhat.com> Tested-by: Jenkins
2022-02-17ScriptForge - (SF_UI) Fix omission of ServiceNameJean-Pierre Ledure
The ServiceName property is part of the standard norm for ScriptForge services. It is used only internally. Its omission in SF_UI caused the tree in construction for help files to contain wrong redirections. Change-Id: I51f1966ef463fffe62c9495dbc2ea0c152fa9667 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/130004 Tested-by: Jean-Pierre Ledure <jp@ledure.be> Tested-by: Jenkins Reviewed-by: Jean-Pierre Ledure <jp@ledure.be>
2022-02-17tdf#147086 OOXML export: don't save the empty editing passwordTünde Tóth
Saving with opening password, but without editing password resulted read-only documents (only on their original path: saving, i.e. copying the file in a different path was a workaround for the lost permission). Regression from commit 1b53c1dfc76f08ca7df40a0673aa50eca700d072 (tdf#144374 DOCX: export the password for editing). Change-Id: I2759dc876ee7668d00eee0aa81490c9d1e0c272b Reviewed-on: https://gerrit.libreoffice.org/c/core/+/129593 Tested-by: László Németh <nemeth@numbertext.org> Reviewed-by: László Németh <nemeth@numbertext.org>
2022-02-17fix maxrow/maxcol mixupLuboš Luňák
In 5e402bac39dc4245844efbde442bdb3bd993a157 I accidentally converted a couple of MAXCOLCOUNT to GetMaxRowCount(). Change-Id: I2f22e614fb79b8e651308bd4dbddcd7e04651903 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/130057 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2022-02-17svtools: extract EmbeddedObjectRef::dumpAsXml() from SwOLEObjMiklos Vajna
Because sw/ doesn't have access to the internals, but dumping should show the state as-is, without calling getters that change the state. Especially GetGraphic() is not a trivial wrapper around mpImpl->pGraphic. Change-Id: I2cf43130d4eeab63611e37b4a978bb7aa546c7f7 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/130056 Reviewed-by: Miklos Vajna <vmiklos@collabora.com> Tested-by: Jenkins
2022-02-17ODBC: fix signatures of Bulk, SpecialColumns et NativeSQLJulien Nabet
I compared with https://docs.microsoft.com/en-us/sql/odbc/reference/syntax/odbc-api-reference?view=sql-server-ver15 Change-Id: Iac38c2305fbf3ace502f9e75802510f76a6bd700 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/130055 Tested-by: Jenkins Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
2022-02-17SwNavigator: reduce the amount of content tracking codeJim Raykowski
Same behavior, less code. Change-Id: I2b93a0a31f754538be2663df90825fc14f4eb210 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/129981 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk> Reviewed-by: Jim Raykowski <raykowj@gmail.com>
2022-02-17sd theme: add doc model for shape fill colorMiklos Vajna
In preparation of adding UNO API for this. Change-Id: Iecb2e44c43bca9e892fcb6242870ec12faa48be5 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/130050 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
2022-02-17tdf#132057: sc_uicalc: Add unittestXisco Fauli
Change-Id: I56c385e0458e2096e0c1e4fd0c85d47c40fe207b Reviewed-on: https://gerrit.libreoffice.org/c/core/+/129987 Tested-by: Jenkins Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
2022-02-17tdf#147164 Drawings are gone converting to PDF from commandlineNoel Grandin
regression from commit 9a850dd9f3c221660b6259bdfd64a77343f2256c Author: Noel Grandin <noel.grandin@collabora.co.uk> Date: Wed Jan 12 10:27:38 2022 +0200 used cache value in ViewObjectContact::getPrimitive2DSequence (2nd attempt) for reasons I do not understand, the cached maObjectRange is wrong at this point in the execution, so switch back to fetching it again, like the code did before the above commit, Change-Id: I4a9f0abc38e59ef687b460689a30ee4badf620a0 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/129994 Tested-by: Noel Grandin <noel.grandin@collabora.co.uk> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2022-02-17remove MAXCOL/MAXROW from ScExternalRefCacheLuboš Luňák
The range is used just for filtering out, and since this is about references to other documents, I wasn't sure which document to use as the limits, so I did a copy that of the functions that returns all. Change-Id: I9711534004796496558848adef03d38ddb115441 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/129988 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2022-02-16lok: sc: handle all local mouse tracking for CalcHenry Castro
Change-Id: I11f3477c0f966d403e076fc73b7e5507ad6597f7 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/118877 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Szymon Kłos <szymon.klos@collabora.com> Reviewed-on: https://gerrit.libreoffice.org/c/core/+/117779 Tested-by: Jenkins Reviewed-by: Henry Castro <hcastro@collabora.com>
2022-02-16Extend loplugin:stringview to OUStringBuffer::copyStephan Bergmann
(Somewhat oddly, there is no OStringBuffer::copy counterpart.) This required some modification to StringView::VisitCXXConstructExpr to avoid > In file included from odk/qa/checkapi/checkapi.cxx:29: > In file included from workdir/CustomTarget/odk/allheaders/allheaders.hxx:351: > In file included from instdir/sdk/include/rtl/math.hxx:31: > instdir/sdk/include/rtl/ustrbuf.hxx:1687:16: error: rather than copy, pass with a view using subView() [loplugin:stringview] > return copy( beginIndex, getLength() - beginIndex ); > ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ while building CppunitTest_odk_checkapi as external C++03 code, where the returned value is wrapped in a CXXConstructExpr. And testing for that case required a new CompilerTest_compilerplugins_clang-c++03 that uses gb_CXX03FLAGS and needs to not set LIBO_INTERNAL_ONLY (via gb_CompilerTest_set_external_code), as compiling as C++03 would otherwise generate lots of errors like unknown char16_t at include/sal/types.h:118. (There was a choice whether to name the new test "-c++03" or "-external", but the issue it tests is caused more by the code being compiled with C++03 than by this being external code, see above.) Change-Id: I873a9c5a70d3ea949cf13a169d46920b71282712 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/130036 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2022-02-16Add sanity check to avoid potential crash in the Collabora Online serverTor Lillqvist
Make sure some coordinates don't become huge negative numbers. This doesn't fix the unknown root cause of course. There already was such a sanity check here in this branch, but for Android only. I now made it cross-platform. Let's use the same Change-Id as in the corresponding commit in the co-2021 branch. Change-Id: I28e343271b3f80ac203b52db1be58d2add89eecd Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128932 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Andras Timar <andras.timar@collabora.com> Reviewed-on: https://gerrit.libreoffice.org/c/core/+/130051 Tested-by: Jenkins Reviewed-by: Tor Lillqvist <tml@collabora.com>
2022-02-16do not allocate columns in ScTable::GetPattern()Luboš Luňák
Otherwise e.g. going to the last column allocates all columns. Change-Id: I9cbdb18545bb200379616484c46c85ca31833563 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/129995 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2022-02-16for unallocated columns check default column attributes (tdf#132057)Luboš Luňák
The problem was that this was returning false for the protected attribute just because a column was not allocated, but the default attributes had the flag set (so if the column had been allocated first it would have the flag set too). Change-Id: I2ef1ef40cafb7e8fc6f7b561c0a376af63f2ad26 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/129984 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2022-02-16move simple checks out of DEBUG_COLUMN_STORAGELuboš Luňák
These few look like useful assertions and they should be cheap, so keep only the extensive checks inside the #if block. Change-Id: I9e6851d25d8b4d637041c1efe1d9712d410262e0 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/130003 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2022-02-16Remove apparently obsolete external/boost/boost-android-unified.patch.1Stephan Bergmann
The two checks for __clang_major__ == 5 etc. had been added with 23a8d5ffbbe58761b89f590f0735abccd69a3681 "Upgrade external/boost to Boost 1.69.0" because "with the non-standard Clang 5.0.300080 from NDK r16b, the build now caused failures". But for our current Android build baseline NDK r19c (cf. README.md), > $ android-ndk-r19c/toolchains/llvm/prebuilt/linux-x86_64/bin/clang --version > Android (5058415 based on r339409) clang version 8.0.2 (https://android.googlesource.com/toolchain/clang 40173bab62ec746213857d083c0e8b0abb568790) (https://android.googlesource.com/toolchain/llvm 7a6618d69e7e8111e1d49dc9e7813767c5ca756a) (based on LLVM 8.0.2svn) [...] has __clang_major__ == 8 by now. Change-Id: I5a5131c14ddf410ed60337992c2d827792c3bbc5 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/130029 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2022-02-16sw: layout: allow keep-with-next paragraph with fly to move backMichael Stahl
The problem is that a paragraph that has the fo:keep-with-next="always" and also a fly anchored at-char or at-para with style:flow-with-text="true" will never move to the previous page, even with space available. In SwContentFrame::MakeAll() it will first MoveBwd() and then go into the special case "if ( bKeep && bMoveable )" which calls Calc() on the next frame. But this fails to move the next frame because of SwFlowFrame::IsPrevObjMove() finding the fly with a mis-matching mpVertPosOrientFrame - that will not be fixed until the first SwContentFrame::MakeAll() is done and SwObjectFormatter::FormatObjsAtFrame() is called. But SwContentFrame::MakeAll() first detects that the frame is not on the same page as the next one despite bKeep, so it MoveFwd() again. This happens already in OOo 3.3. IsJoinLocked() should be a reasonably good heuristic for "is the previous frame being formatted". Change-Id: I86996dcb3d0c46fcb99ec9ad463569abbb8b99f0 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/130033 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.stahl@allotropia.de>
2022-02-16tdf#146622 sw crash fix: don't delete already deleted rowsLászló Németh
Delete tables and rows removed also tables and table rows with tracked row deletion/insertion. This resulted not only lost change tracking, but a crashing Undo. Crash regression from commit 99059a1ececa3621c2fe46fabdd79eed9d626c42 "tdf#143359 sw: track deletion of empty table rows". Non-tracked deletion of the tracked row changes was a temporary solution for the missing UI of tracked row changes, implemented in commit 05366b8e6683363688de8708a3d88cf144c7a2bf "tdf#60382 sw offapi: add change tracking of table/row deletion". Note: UI was added in commit f348440e17debacbcba9153e238e010e8c020bdc "tdf#146120 sw: show tracked table changes with different color", commit 95c003d75e0f8b255344715a35358072b5eba99d "tdf#146145 sw: 1-click Accept/Reject of table row changes", commit 84fbb3398f7486f00e7b7dea415e1ea2510a9535 "tdf#146144 sw: add tooltip to table rows with change tracking", commit eebe4747d2d13545004937bb0267ccfc8ab9d63f "tdf#144270 sw: manage tracked table (row) deletion/insertion", commit f481c2c8e74bded11fac754e493560391229dbcd "tdf#144057 sw track changes: hide deleted table rows" and commit 23846867ea32667ccf328c36142394dd6aaee8ba "tdf#147182 sw: accept/reject all changes of a table selection". Change-Id: I384b750b0d3626fa8b3f256c7eaf5b93f382e4e5 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/129958 Tested-by: László Németh <nemeth@numbertext.org> Reviewed-by: László Németh <nemeth@numbertext.org>
2022-02-16flat-odf-cleanup.py: fix FutureWarningMichael Stahl
The behavior of this method will change in future versions. Use specific 'len(elem)' or 'elem is not None' test instead. Change-Id: Ic1aedaff3569b9b3063823c747c1d09623b2efad Reviewed-on: https://gerrit.libreoffice.org/c/core/+/130032 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.stahl@allotropia.de>
2022-02-16sw: convert an OSL_FAIL to SAL_INFOMichael Stahl
Change-Id: I1ff4c56b52716822dd04cb0e07347a19a2122a4f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/130031 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.stahl@allotropia.de>
2022-02-16reenable fuzzing for InsertMatrixFormulaCaolán McNamara
Change-Id: I9a665df74882eb4edac9a1787afe83af5e5e144e Reviewed-on: https://gerrit.libreoffice.org/c/core/+/129990 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2022-02-16Don't confusingly use the term "gesture" for plain old mouse eventsTor Lillqvist
"Gesture" is a term typically used for finger input on touch devices. The LibreOfficeKitMouseEventType type is for traditional mouse events. Change-Id: Id14ab725567546e33f3dd1277fb4380b9f81d59b Reviewed-on: https://gerrit.libreoffice.org/c/core/+/129985 Tested-by: Tor Lillqvist <tml@collabora.com> Reviewed-by: Tor Lillqvist <tml@collabora.com>
2022-02-16clamp ColumnSpanSet::executeAction() to allocated columnsLuboš Luňák
It's already done by executeColumnAction() and currently existing actions do not need unallocated columns. This prevents allocating all columns e.g. when selecting a full row just because ScDocument::GetRangeScriptType() gets called. Change-Id: I517ce14a756be83a385968549b32d430274b8002 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/129993 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2022-02-16do not allocate columns in ScTable::GetNumberFormat()Luboš Luňák
Change-Id: I9347f1d638473f9bcca9b96640a71ae1ef09e415 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/129997 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>