summaryrefslogtreecommitdiff
path: root/sc
AgeCommit message (Collapse)AuthorFilesLines
2022-05-27tdf#132293: Removing unused imports from uitests files.tagezi13-30/+21
This is the final cleanup of imports in the sc module. 'pyflakes sc' is now empty. It seems, the most imports were copy-pasted from a file to a new one. Additionally, the import block and surrounding area made more readable. Change-Id: I8c4dff1007b9954c35795a7c8a940e8fcf8d7f93 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135036 Tested-by: Jenkins Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
2022-05-26cid#1504573 Dereference before null checkCaolán McNamara1-1/+1
since... commit 8b4b852a35149b1cfffc681cbb4f57d4c0b671b3 Date: Mon May 23 15:48:41 2022 +0200 Advanced Diagram support: Isolated IDiagramHelper, selection visualization we've already derefed pObj so can drop that check Change-Id: I9bdab5c069405c0015f74e4621e7b37fbbed2dd8 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135017 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2022-05-26WIP: dunno about "Hodler"Andrea Gelmini1-1/+1
Change-Id: I9fbee006237ccb70e31109023cf46b21aec325d6 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134668 Tested-by: Julien Nabet <serval2412@yahoo.fr> Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
2022-05-26tdf#139734 Drop redundant asserts after MacrosTest::loadFromDesktopSiddhant Chaudhary1-2/+0
Removed a redundant assert on returned value of `MacrosTest::loadFromDesktop`. Change-Id: Ia318cd770b120baff87e7cf5f01120beaf112794 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134957 Tested-by: Jenkins Reviewed-by: Hossein <hossein@libreoffice.org>
2022-05-25directly instantiate IndexedPropertyValuesContainerNoel Grandin3-9/+10
without the overhead of the UNO service engine Change-Id: I4a02fda2b3c92a897634374bf72cfffee4f531f8 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134923 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2022-05-25tdf#148467 Move sparklines items to Insert/Format main menuRoman Kuznetsov1-10/+10
Change-Id: I2606fdd6301e5d1cb1e855d79a971762ed2d835d Reviewed-on: https://gerrit.libreoffice.org/c/core/+/133608 Tested-by: Jenkins Reviewed-by: Heiko Tietze <heiko.tietze@documentfoundation.org>
2022-05-25check column again when going to the next Calc sheetLuboš Luňák1-2/+2
Since the number of allocated columns may be lower in the next one. Change-Id: I92eb4642ed01ff6c858a250aefcfa36c565103d1 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134932 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2022-05-25Advanced Diagram support: Isolated IDiagramHelper, selection visualizationArmin Le Grand (Allotropia)2-8/+5
Moved and isolated IDiagramHelper to own file to get SdrObjGroup smaller and less dependent again, all places adapted. isDiagram() now available at SdrObject directly, adapted and have less places which need to cast for SdrObjGroup for check. Started to add SdrHdl/selection visualization to seleced Diagram. Only as a start, will need to be extended to look good/better, plus evtl. functionality in handles/UI. Corrected error(s) found by failing UnitTests More clang-notes (static, namespace) I nneeded to follow Change-Id: If4675b3270d3ee30259fce49deb017dbbaf5c0c4 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134825 Tested-by: Jenkins Reviewed-by: Armin Le Grand <Armin.Le.Grand@me.com>
2022-05-24tdf#145248 don't start a drag if actively selectingCaolán McNamara1-1/+2
Change-Id: I00565adbb32a6d9109a75548a544e79ba1951650 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134881 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2022-05-24Use o3tl::make_unsigned in some placesStephan Bergmann11-12/+23
...where a signed and an unsigned value are compared, and the signed value has just been proven to be non-negative here Change-Id: I20600d61a5d59d739bc1bee838c0038e4611aec2 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134875 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2022-05-24modernize and improve PropertySetInfoNoel Grandin1-4/+2
(*) use o3tl::span for the array param, which means we don't need a null entry to terminate the array (*) use std::unordered_map to speed things up (*) mark the array as static at a few more call sites Change-Id: I05b6cae7552f44459e183ec05cb94e60edb3bfe0 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134832 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2022-05-24flatten the maps in SvXMLNamespaceMapNoel Grandin1-4/+4
to reduce pointer chasing Change-Id: I8d581c03f80fa279a93ed23b7116c6f950405b7a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134857 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2022-05-23tdf#132293: Removing unused imports from uitests files.tagezi63-243/+204
It seems, the most imports were copy-pasted from a file to a new one. Additionally, the import block and surrounding area made more readable. Change-Id: Ie1f31c489cb1e744b5d01d35e3908f1071313e90 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134413 Tested-by: Jenkins Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
2022-05-23tdf#132293: Removing unused imports from uitests files.tagezi33-144/+89
It seems, most of the most imports were copy-pasted from one file to a new one. Additionally, the import block and surrounding area made more readable. Change-Id: I8afc5debef6e758d7ad42b1a649f9556d3d7abbd Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134400 Tested-by: Jenkins Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
2022-05-23Resolves tdf#131155 - Keep frequently used options on sort criteria tabHeiko Tietze16-294/+270
* Row/Column header moved * Sort by row/column moved * Extra variables removed * UI tests adjusted to read/set sort direction and header from first tab Change-Id: I9fc0406806256f289d52e45b096e392067768eaa Reviewed-on: https://gerrit.libreoffice.org/c/core/+/130843 Tested-by: Heiko Tietze <heiko.tietze@documentfoundation.org> Reviewed-by: Heiko Tietze <heiko.tietze@documentfoundation.org>
2022-05-22cid#1504537 silence Dereference after null checkCaolán McNamara1-1/+1
no change in practice because either pDoc or pDocSh and not both are set Change-Id: I1da19bef2a2a5cec700cbc6126f873079efcba88 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134733 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2022-05-22cid#1504538 Dereference after null checkCaolán McNamara1-1/+1
and cid#1504536 Dereference after null check Change-Id: If727df50e9e375b0ebd30e7537ac3d88ad72dc11 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134731 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2022-05-22cid#1504545 Dereference after null checkCaolán McNamara1-1/+1
Change-Id: If23314cca9eec9c4b9cf668945976327184d5690 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134730 Tested-by: Caolán McNamara <caolanm@redhat.com> Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2022-05-22pass ScDocShell by reference in ctor to indicate never initially nullCaolán McNamara3-18/+18
Change-Id: I6b07f734aba06a643b6240562bb3e427e5c1e9ab Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134729 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2022-05-22cid#1504539 Dereference before null checkCaolán McNamara1-2/+2
seeing as its always derefed before here, the null check isn't useful Change-Id: I7c50d357978c7468eec469b4f32601e9b99e07e2 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134728 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2022-05-22cid#1504532 Dereference after null checkCaolán McNamara1-3/+5
Change-Id: I044e3bfec2af9d6379849b8ee6ce4ecbe637cc35 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134727 Tested-by: Caolán McNamara <caolanm@redhat.com> Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2022-05-22cid#1504534 Dereference before null checkCaolán McNamara1-2/+2
Change-Id: I7deb272cbf7105b78911acb4b17bc3f078913a2a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134726 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2022-05-22cid#1504540 Dereference before null checkCaolán McNamara1-2/+2
Change-Id: Ia47b6dd5d1524bd377670815a342d0ee478f823e Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134725 Tested-by: Caolán McNamara <caolanm@redhat.com> Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2022-05-22cid#1504542 Dereference before null checkCaolán McNamara1-1/+1
Change-Id: I3a3ee9ddc09d63fb33fd041353399b3aa4f79d96 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134724 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2022-05-22cid#1504440 move Uninitialized scalar field annotationCaolán McNamara1-1/+3
Change-Id: Ia147241460c537abea7f6ef3cd32038551c45826 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134723 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2022-05-22cid#1504533 silence Uncaught exceptionCaolán McNamara1-1/+3
Change-Id: Id2c782e417b673dcc2e2b5170bcaf6b98bef85f3 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134720 Tested-by: Caolán McNamara <caolanm@redhat.com> Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2022-05-21lok-calc: new callback for print rangesDennis Francis4-0/+61
With this callback the lok clients can read and draw the print ranges on each sheet of the Calc document. Conflicts: include/LibreOfficeKit/LibreOfficeKitEnums.h libreofficekit/source/gtk/lokdocview.cxx Change-Id: Ie19351d4420e0f3d4191f6a354ce99ab830aede2 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134375 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Pranam Lashkari <lpranam@collabora.com> (cherry picked from commit 172bc7a8f4eeab907adac077407186fbbd046a77) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134527 Reviewed-by: Gökay ŞATIR <gokaysatir@collabora.com> (cherry picked from commit 29b7b25d454e0a6cd07c00e13fdb83cc8a381583) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134614 Tested-by: Jenkins Reviewed-by: Dennis Francis <dennis.francis@collabora.com>
2022-05-20bump up Calc MAXTILEDROW to MAXROWLuboš Luňák2-2/+2
I.e. no restriction on number of rows for LOK. Change-Id: I248a70bafe18c68e59f604e33b9456474ab785c6 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134620 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2022-05-20Fix typoAndrea Gelmini1-1/+1
Change-Id: I66f23338aaebb9a4ba70f00cbd07f74d2344017e Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134669 Tested-by: Julien Nabet <serval2412@yahoo.fr> Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
2022-05-20Document sparkline related classes, functions and structsTomaž Vajngerl15-2/+22
No functional change. Change-Id: I822c6a9d270dc582aaae2900f833843a0d6f8ddc Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134651 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
2022-05-20new loplugin:unnecessary lockingNoel Grandin9-21/+0
off by default, since each warning needs careful inspection Change-Id: I805c1d1cdde531a1afdc76e87b22f879fc3c9753 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134641 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2022-05-19tdf#124820: sc_uicalc: Add unittestXisco Fauli2-0/+24
Change-Id: Ib5c5ce333d9bc1b436454aae1f181e4f1ec73b12 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134637 Tested-by: Jenkins Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
2022-05-19uitest: sc: Rename UItest and extend itXisco Fauli4-52/+71
The test was added in 6af4c1d097dfba897e305a1e57d1e920f36ce264 "tdf#123877 sc XLSX: don't freeze during saving recovery" Hoewever, as discussed in https://gerrit.libreoffice.org/c/core/+/134409 the UItest doesn't cover the fix itself but a regression introduced in the first version of the fix, thus, remove the reference to tdf#123877 in the test. I've also extended the test to check the document can be saved when the password is introduced to the retry password dialog Finally, I replaced the sample file by the minimal example added by Gabor to https://bugs.documentfoundation.org/show_bug.cgi?id=123877 Change-Id: I2242ebd36072ce147de7eb9fc3d735298ac476b8 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134607 Reviewed-by: László Németh <nemeth@numbertext.org> Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org> Tested-by: Xisco Fauli <xiscofauli@libreoffice.org>
2022-05-19don't allocate unnecessary columns when inserting a rowLuboš Luňák4-19/+21
Change-Id: I616ef20dc1295ce17c4877ff367815bb6a90b7a1 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134547 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2022-05-19actually insert the column(s) in ScTable::InsertCol()Luboš Luňák1-0/+3
This was broken if the all the columns weren't allocated, since at least in the full-column mode it was swapping the last empty columns in the place of the new ones, but without all columns allocated there possibly weren't last empty columns, so it was instead swapping in last data columns. Change-Id: I21552f0eb296b0df5507677510a8b85fccb1ae5a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134546 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2022-05-19ScTable::TestInsertRow() does not need to allocate all columnsLuboš Luňák2-6/+18
Change-Id: Ic213997edf6838282a38e444a638713a72397fb4 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134545 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2022-05-18tdf#99708 Make sure to get the sanitized valueSamuel Mehrbrodt1-2/+2
Follow-up to d0cacf09a1105d89bf3df84b18623d790e3aeb82 Change-Id: Iaf1f755b5dcf172d781fc5884fdba4c891b6b1a6 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134508 Tested-by: Jenkins Reviewed-by: Samuel Mehrbrodt <samuel.mehrbrodt@allotropia.de>
2022-05-18no need to take a lock when returning static dataNoel Grandin15-37/+0
Change-Id: I8d836c4a919056e8b600549f82b0d5dee9ab1a47 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134536 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2022-05-18silence coverity warningsLuboš Luňák2-0/+4
Those fields are meant to be uninitialized by the ctor. And if they get used by mistake, I'd prefer to hear that from e.g. Valgrind rather than cover it up with some dummy default value. Change-Id: Ide57f84e9dc0fcc8c7395af99e216c7626d50913 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134512 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2022-05-18make CreateColumnIfNotExists() non-constLuboš Luňák8-25/+33
Generally const functions should not modify the data, so this generally should not be needed. Those functions that need to allocate a column because they can't/don't handle default values for non-existent columns well should go with const_cast, being an exception to the rule. Change-Id: I62706da5b447019542d6775f14064fa15b71f3c1 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134488 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2022-05-17lok: respect zoom in calc tile rendering of EditViewSzymon Kłos1-4/+8
Issue was that when using 150% zoom in LOK and editing some textbox inside Calc spreadsheet - we didn't see content of it (but tiles were invalidated). In other view we have seen textbox in correct place if zoom was 100%. To fix that we need to pass zoom factor and use it. Change-Id: Ib1cf49af02d0637e09ce68c5c2c41ffb3014c701 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134437 Tested-by: Jenkins Reviewed-by: Szymon Kłos <szymon.klos@collabora.com>
2022-05-17provide more details about failures in Calc 'functions' testsLuboš Luňák2-1/+25
Instead of simply asserting that something failed, say which part of the .fods test document failed. Change-Id: Idd901186f27d2395b9e3561fbac6bfc1340b7e72 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134460 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2022-05-17tdf#123877 sc XLSX: don't freeze during saving recoveryLászló Németh3-0/+65
file by asking password re-typing unstoppably. Instead of this, skip recovery file saving, if the document contains password hashes which haven't been supported by the "calc8" filter of the recovery file (which triggered the "Re-type password" dialog). Solved problems: – Asking for passwords during a non-interactive background process. – A single Cancel didn't close the "Re-type password" dialog window, only pressing three times at least (according to the value of RETRY_STORE_ON_MIGHT_FULL_DISC_USEFULL), but waiting for the password for a while could result a frozen "Re-type password" dialog, where only retyping or removing the password(s) were the escape routes. – Re-typing the password required the password (but modifying the original document doesn't require this). – Removing the password resulted in loss of the protection after saving the original XLSX document. Add a UI test to keep the "Re-type password" dialog during Save As. Note: because of the regression reported in tdf#145757, it needs to wait 10 min for saving the recovery file, yet, despite the changed time in Tools->Options->Load/Save->General. Change-Id: Icc6ee4d67048cdf15ab75ef8e2ee8f1709cdd4c2 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134409 Tested-by: László Németh <nemeth@numbertext.org> Reviewed-by: László Németh <nemeth@numbertext.org>
2022-05-17At least make CppunitTest_sc_text_functions_test more resilient to ICU versionStephan Bergmann1-12/+12
61f4250ee9f43902107e4d2e6322cbf54f52dd8e "Make CLEAN fully compliant woth ODFF v1.3" has changed lcl_ScInterpreter_IsPrintable (sc/source/core/tool/interpr1.cxx) to use ICU's u_isdefined to check for Unicode code points of category Cn (i.e., noncharacter or reserved). This is at least questionable, as assignment of code points to that category varies with Unicode versions. And while <https://docs.oasis-open.org/office/OpenDocument/v1.3/os/part4-formula/OpenDocument-v1.3-os-part4-formula.html#__RefHeading__1017856_715980110> "Open Document Format for Office Applications (OpenDocument) Version 1.3. Part 4: Recalculated Formula (OpenFormula) Format: 1.4 Normative References" references "The Unicode Standard, Version 5.2.0" (so one might expect CLEAN to use the category classification from that old Unicode version), versions of ICU keep being updated with current Unicode versions' category classifications. For example, the currently bundled external/icu's icu4c-70_1-src.tgz uses Unicode 14 (according to <https://icu.unicode.org/download/70#h.x1orhyniml8k>) for its implementation of u_isdefined. And for --with-system-icu, all that configure.ac apparently requires is that "icu-i18n >= 4.6" (i.e., it will potentially allow the behavior of u_isdefined to vary over a wide range of Unicode versions). And case in point, 61f4250ee9f43902107e4d2e6322cbf54f52dd8e also added a test to sc/qa/unit/data/functions/text/fods/clean.fods (row 47) that verifies that U+FDCF ARABIC LIGATURE SALAAMUHU ALAYNAA does not get cleaned away by CLEAN. But U+FDCF is only an assigned code point (thus no longer of category Cn) since Unicode 14 (cf. <https://www.unicode.org/charts/PDF/Unicode-14.0/U140-FB50.pdf>), so while builds against external/icu (covering Unicode 14) succeed, --with-system-icu builds like a flatpak build against org.freedesktop.Sdk//21.08, still at ICU 69 and Unicode 13, fail CppunitTest_sc_text_functions_test with > Testing load file:///run/build/libreoffice//sc/qa/unit/data/functions/text/fods/clean.fods: > /run/build/libreoffice/sc/qa/unit/functions_test.cxx:43:TextFunctionsTest::testTextFormulasFODS > double equality assertion failed > - Expected: 1 > - Actual : 0 > - Delta : 1e-14 (<https://flathub.org/builds/#/builders/11/builds/7103>). Irrespective of whether using ICU's varying u_isdefined in the implementation of CLEAN is correct, at least make that "doesn't get CLEAN'ed away" test more resilient to what version of ICU is being used, by using F+UF00 TIBETIAN SYLLABLE OM, which got added all the way back in Unicode 2, rather than U+FDCF ARABIC LIGATURE SALAAMUHU ALAYNAA, which only got added in Unicode 14. (And to add insult to injury, in sc/qa/unit/data/functions/text/fods/clean.fods 61f4250ee9f43902107e4d2e6322cbf54f52dd8e encoded U+FDCF in text not as the three UTF-8 bytes 0xEF 0xB7 0x8F, but rather re-encoded as the six bytes 0xC3 0xAF 0xC2 0xB7 0xC2 0x8F, i.e., the three characters U+00EF LATIN SMALL LETTER I WITH DIARESIS, U+00B7 MIDDLE DOT, U+008F. But I assume that was just a mistake, not something that I should faithfully copy in the file's new version.) Change-Id: Icc8d879b1397d8292914cbd31708d0c561f3b06e Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134474 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2022-05-17freeze() and thaw() a widget during creation (tdf#149112)Luboš Luňák1-0/+3
The repeated inserts each trigger SvTreeList::GetVisibleCount(), which has a poor performance because of repeated uses of the SvListView::Impl::m_DataTable map. Change-Id: Ibb261a8501a1d5c168b37675e34498386f161595 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134415 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2022-05-17tdf#142635: use the same ScDocument for clipboard and GlobalDrawPersistMike Kaganski10-33/+39
This way, the document used for chart copy has the proper sheets, and the data ranges are created correctly. This reverts commit 8d98dd8b3896c14af057e90e3a327172a9262e03 Author Mike Kaganski <mike.kaganski@collabora.com> Date Thu Jun 03 13:15:11 2021 +0200 tdf#142635: skip UITest for now Change-Id: I0a3aa6028f49ded278f8665556007b1f722e21b0 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134251 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2022-05-17Related: tdf#142635 Make ScDocShell reference ScDocument by shared_ptrMike Kaganski8-559/+559
Required for eventual sharing of the document between the shell and other pieces having different lifetime, as required to fix tdf#142635. Change-Id: I9e69bd2e3b57d7712526f51161e7e725d4af8068 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134383 Tested-by: Mike Kaganski <mike.kaganski@collabora.com> Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2022-05-16Fix a UITest on WindowsMike Kaganski1-2/+8
Change-Id: If4e5612e2b9fa41c487a6ab54c1e23fd2d63ac9c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134365 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2022-05-16de-lint the .ui file for auto gtk3->gtk4 conversionCaolán McNamara1-12/+1
Change-Id: Icb288ae13e75784e7b560101f33b8a96935bda36 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134389 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2022-05-16forcepoint#97 avoid Invalid read of size 2Caolán McNamara6-1/+29
==143282== Invalid read of size 2 ==143282== at 0x190CDBFC: SfxItemSet::Count() const (itemset.hxx:96) ==143282== by 0x1910F33E: SfxItemSet::Get(unsigned short, bool) const (itemset.cxx:748) ==143282== by 0x1F14D76C: ScPatternAttr::GetItem(unsigned short, SfxItemSet const&, SfxItemSet const*) (patattr.cxx:1347) ==143282== by 0x1F14D7DA: ScPatternAttr::GetItem(unsigned short, SfxItemSet const*) const (patattr.cxx:1352) ==143282== by 0x202A3E44: ScLineBreakCell const& ScPatternAttr::GetItem<ScLineBreakCell>(TypedWhichId<ScLineBreakCell>, SfxItemSet const*) const (patattr.hxx:83) ==143282== by 0x2028E8BC: ScOutputData::LayoutStrings(bool, bool, ScAddress const&) (output2.cxx:1677) ==143282== by 0x2028D4A8: ScOutputData::DrawStrings(bool) (output2.cxx:1473) ==143282== by 0x202D9879: ScPrintFunc::PrintArea(short, int, short, int, long, long, bool, bool, bool, bool) (printfun.cxx:1675) ==143282== by 0x202DD459: ScPrintFunc::PrintPage(long, short, int, short, int, bool, ScPreviewLocationData*) (printfun.cxx:2301) ==143282== by 0x202DF491: ScPrintFunc::DoPrint(MultiSelection const&, long, long, bool, ScPreviewLocationData*) (printfun.cxx:2713) ==143282== by 0x20031888: ScModelObj::render(int, com::sun::star::uno::Any const&, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&) (docuno.cxx:2259) ==143282== by 0x30C1A485: PDFExport::ExportSelection(vcl::PDFWriter&, com::sun::star::uno::Reference<com::sun::star::view::XRenderable> const&, com::sun::star::uno::Any const&, StringRangeEnumerator const&, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue>&, int) (pdfexport.cxx:219) ==143282== by 0x30C1F879: PDFExport::Export(rtl::OUString const&, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&) (pdfexport.cxx:987) ==143282== by 0x30C33BA2: PDFFilter::implExport(com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&) (pdffilter.cxx:174) ==143282== by 0x30C33F2A: PDFFilter::filter(com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&) (pdffilter.cxx:237) ==143282== by 0x21AC6986: SfxObjectShell::ExportTo(SfxMedium&) (objstor.cxx:2488) ==143282== by 0x21AC2363: SfxObjectShell::SaveTo_Impl(SfxMedium&, SfxItemSet const*) (objstor.cxx:1553) ==143282== by 0x21ACE816: SfxObjectShell::PreDoSaveAs_Impl(rtl::OUString const&, rtl::OUString const&, SfxItemSet const&, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&) (objstor.cxx:2966) ==143282== by 0x21ACCA87: SfxObjectShell::CommonSaveAs_Impl(INetURLObject const&, rtl::OUString const&, SfxItemSet&, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&) (objstor.cxx:2756) ==143282== by 0x21AA8CDB: SfxObjectShell::APISaveAs_Impl(rtl::OUString const&, SfxItemSet&, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&) (objserv.cxx:317) ==143282== by 0x21B2B4AD: SfxBaseModel::impl_store(rtl::OUString const&, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&, bool) (sfxbasemodel.cxx:3132) ==143282== by 0x21B2CB12: SfxBaseModel::storeToURL(rtl::OUString const&, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&) (sfxbasemodel.cxx:1768) ==143282== by 0x1C507AFE: ScPDFExportTest::exportToPDF(com::sun::star::uno::Reference<com::sun::star::frame::XModel> const&, ScRange const&) (scpdfexport.cxx:192) ==143282== by 0x1C511A33: ScPDFExportTest::testForcepoint97() (scpdfexport.cxx:571) ==143282== by 0x1C52778D: void std::__invoke_impl<void, void (ScPDFExportTest::*&)(), ScPDFExportTest*&>(std::__invoke_memfun_deref, void (ScPDFExportTest::*&)(), ScPDFExportTest*&) (invoke.h:74) ==143282== by 0x1C5276C1: std::__invoke_result<void (ScPDFExportTest::*&)(), ScPDFExportTest*&>::type std::__invoke<void (ScPDFExportTest::*&)(), ScPDFExportTest*&>(void (ScPDFExportTest::*&)(), ScPDFExportTest*&) (invoke.h:96) ==143282== by 0x1C527659: void std::_Bind<void (ScPDFExportTest::*(ScPDFExportTest*))()>::__call<void, , 0ul>(std::tuple<>&&, std::_Index_tuple<0ul>) (functional:420) ==143282== by 0x1C5275E2: void std::_Bind<void (ScPDFExportTest::*(ScPDFExportTest*))()>::operator()<, void>() (functional:503) ==143282== by 0x1C52758C: void std::__invoke_impl<void, std::_Bind<void (ScPDFExportTest::*(ScPDFExportTest*))()>&>(std::__invoke_other, std::_Bind<void (ScPDFExportTest::*(ScPDFExportTest*))()>&) (invoke.h:61) ==143282== by 0x1C52753C: std::enable_if<is_invocable_r_v<void, std::_Bind<void (ScPDFExportTest::*(ScPDFExportTest*))()>&>, void>::type std::__invoke_r<void, std::_Bind<void (ScPDFExportTest::*(ScPDFExportTest*))()>&>(std::_Bind<void (ScPDFExportTest::*(ScPDFExportTest*))()>&) (invoke.h:111) ==143282== by 0x1C52731C: std::_Function_handler<void (), std::_Bind<void (ScPDFExportTest::*(ScPDFExportTest*))()> >::_M_invoke(std::_Any_data const&) (std_function.h:290) ==143282== by 0x1C527A34: std::function<void ()>::operator()() const (std_function.h:590) ==143282== by 0x1C527078: CppUnit::TestCaller<ScPDFExportTest>::runTest() (TestCaller.h:175) ==143282== by 0x49326F2: CppUnit::TestCaseMethodFunctor::operator()() const (TestCase.cpp:32) ==143282== by 0x15937E3D: (anonymous namespace)::Protector::protect(CppUnit::Functor const&, CppUnit::ProtectorContext const&) (vclbootstrapprotector.cxx:46) ==143282== by 0x4929ED1: CppUnit::ProtectorChain::ProtectFunctor::operator()() const (ProtectorChain.cpp:20) ==143282== by 0x4B05D6D: (anonymous namespace)::Prot::protect(CppUnit::Functor const&, CppUnit::ProtectorContext const&) (unobootstrapprotector.cxx:78) ==143282== by 0x4929ED1: CppUnit::ProtectorChain::ProtectFunctor::operator()() const (ProtectorChain.cpp:20) ==143282== by 0x4AF2F2A: (anonymous namespace)::Prot::protect(CppUnit::Functor const&, CppUnit::ProtectorContext const&) (unoexceptionprotector.cxx:62) ==143282== by 0x4929ED1: CppUnit::ProtectorChain::ProtectFunctor::operator()() const (ProtectorChain.cpp:20) ==143282== by 0x491261E: CppUnit::DefaultProtector::protect(CppUnit::Functor const&, CppUnit::ProtectorContext const&) (DefaultProtector.cpp:15) ==143282== by 0x4929ED1: CppUnit::ProtectorChain::ProtectFunctor::operator()() const (ProtectorChain.cpp:20) ==143282== by 0x4928690: CppUnit::ProtectorChain::protect(CppUnit::Functor const&, CppUnit::ProtectorContext const&) (ProtectorChain.cpp:86) ==143282== by 0x4946ACD: CppUnit::TestResult::protect(CppUnit::Functor const&, CppUnit::Test*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) (TestResult.cpp:182) ==143282== by 0x4932103: CppUnit::TestCase::run(CppUnit::TestResult*) (TestCase.cpp:91) ==143282== by 0x4932BCF: CppUnit::TestComposite::doRunChildTests(CppUnit::TestResult*) (TestComposite.cpp:64) ==143282== by 0x4932A5F: CppUnit::TestComposite::run(CppUnit::TestResult*) (TestComposite.cpp:23) ==143282== by 0x4932BCF: CppUnit::TestComposite::doRunChildTests(CppUnit::TestResult*) (TestComposite.cpp:64) ==143282== by 0x4932A5F: CppUnit::TestComposite::run(CppUnit::TestResult*) (TestComposite.cpp:23) ==143282== by 0x494FDBF: CppUnit::TestRunner::WrappingSuite::run(CppUnit::TestResult*) (TestRunner.cpp:47) ==143282== Address 0x1d7624b0 is 64 bytes inside a block of size 120 free'd ==143282== at 0x4847669: operator delete(void*) (vg_replace_malloc.c:923) ==143282== by 0x1F150EA1: ScPatternAttr::~ScPatternAttr() (patattr.hxx:53) ==143282== by 0x190D29B2: SfxItemPool::Remove(SfxPoolItem const&) (itempool.cxx:802) ==143282== by 0x1EA27F8E: ScAttrArray::SetPatternAreaImpl(int, int, ScPatternAttr const*, bool, ScEditDataArray*, bool) (attarray.cxx:574) ==143282== by 0x1EBF43D5: ScAttrArray::SetPattern(int, ScPatternAttr const*, bool) (attarray.hxx:148) ==143282== by 0x1EBD9068: ScColumn::ApplyAttr(int, SfxPoolItem const&) (column.cxx:634) ==143282== by 0x1EC6C1EB: ScColumn::SetNumberFormat(int, unsigned int) (column2.cxx:3094) ==143282== by 0x1F1CB737: ScTable::SetNumberFormat(short, int, unsigned int) (table2.cxx:2238) ==143282== by 0x1EE3F135: ScDocument::SetNumberFormat(ScAddress const&, unsigned int) (document.cxx:3717) ==143282== by 0x1F09CCA5: ScFormulaCell::InterpretTail(ScInterpreterContext&, ScFormulaCell::ScInterpretTailParameter) (formulacell.cxx:2155) ==143282== by 0x1F099D9F: ScFormulaCell::Interpret(int, int) (formulacell.cxx:1615) ==143282== by 0x1ECC048D: ScFormulaCell::MaybeInterpret() (formulacell.hxx:465) ==143282== by 0x1F09F5C8: ScFormulaCell::IsValue() (formulacell.cxx:2760) ==143282== by 0x1EA82355: (anonymous namespace)::hasNumericImpl(CellType, ScFormulaCell*) (cellvalue.cxx:155) ==143282== by 0x1EA822FA: ScRefCellValue::hasNumeric() const (cellvalue.cxx:624) ==143282== by 0x2028E876: ScOutputData::LayoutStrings(bool, bool, ScAddress const&) (output2.cxx:1676) ==143282== by 0x2028D4A8: ScOutputData::DrawStrings(bool) (output2.cxx:1473) ==143282== by 0x202D9879: ScPrintFunc::PrintArea(short, int, short, int, long, long, bool, bool, bool, bool) (printfun.cxx:1675) ==143282== by 0x202DD459: ScPrintFunc::PrintPage(long, short, int, short, int, bool, ScPreviewLocationData*) (printfun.cxx:2301) ==143282== by 0x202DF491: ScPrintFunc::DoPrint(MultiSelection const&, long, long, bool, ScPreviewLocationData*) (printfun.cxx:2713) ==143282== by 0x20031888: ScModelObj::render(int, com::sun::star::uno::Any const&, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&) (docuno.cxx:2259) ==143282== by 0x30C1A485: PDFExport::ExportSelection(vcl::PDFWriter&, com::sun::star::uno::Reference<com::sun::star::view::XRenderable> const&, com::sun::star::uno::Any const&, StringRangeEnumerator const&, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue>&, int) (pdfexport.cxx:219) Change-Id: Idf19b79f5aef7e07666249f5f9ec510003a3f886 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/132431 Tested-by: Jenkins Reviewed-by: Eike Rathke <erack@redhat.com>