summaryrefslogtreecommitdiff
path: root/sax/source
AgeCommit message (Collapse)Author
3 daystdf#161483 enable LO to read ODF angle unitsRegina Henschel
ODF uses in several places data type 'angle' (18.3.1, ODF 1.3). That is a double followed by unit identifier 'deg', 'grad' or 'rad' or a unit less value in degrees. LO uses in the API angles in degrees, 1/10 of degrees and 1/100 of degrees in data types 'double', 'short' and 'long'. Without the fix LO does not interpret the units, but takes only the number part. Change-Id: Ib3f2a518a25199e3cf7a7a8572e169785f75c427 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/169360 Reviewed-by: Michael Stahl <michael.stahl@allotropia.de> Tested-by: Jenkins Reviewed-by: Regina Henschel <rb.henschel@t-online.de>
2024-06-11tdf#161327 Interpret angle units in dr3d:end-angle ..Regina Henschel
.. and draw:rotation in <draw:hatch> element. ODF 1.1 has not specified the syntax of datatype 'angle'. Since ODF 1.2 it is specified as double with unit "deg", "grad" or "rad", or without unit. The unit-less value is specified to be in degrees. But OOo, AOO and all LO versions had written the value unit-less in 1/10th of a degree in some cases. To fix it, LibreOffic will be enabled to read units. When then the active versions are able to read units, starting with the then actual version, LibreOffice will write angles with unit 'deg'. This has already be done for gradients, see tdf#89475. This patch starts the first step to make LibreOffice able to read units for dr3d:end-angle (UNO D3DEndAngle) and for draw:rotation (UNO FillHatch.Angle). I have not found further cases of writing 1/10deg. The patch still writes unit-less 1/10th of a degree for export to ODF 1.3 and earlier. When it is time to write unit degree or when LibreOffice supports the next ODF versions, some places need to be adapted. They are marked. The converter convertAngle is renamed to convert10thDegAngle() to indicate, that it is special. The parts, which were specific to gradients are moved to the gradients, so that it is now usable for dr3d:angle and draw:rotation too. I intend to write next a patch that enables LibreOffice to read angle units for cases where LibreOffice already writes unit-less values in degree. That is not so urgent, but to bring LibreOffice nearer to ODF, reading angle units should be implemented nevertheless. The file xmlbahdl.hxx is moved from xmloff/source/style to xmloff/inc to have access to it from xmloff/source/draw. Change-Id: I8ffc2735f8bcfefb86efa80eb05f900c32403f31 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/168336 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.stahl@allotropia.de> Reviewed-by: Regina Henschel <rb.henschel@t-online.de>
2024-05-10loplugin:ostr in saxNoel Grandin
Change-Id: Ia7572db738f1a3d6f7bec8c3a93ec02d93a531ba Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167437 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2024-04-28Extended loplugin:ostr manual changesStephan Bergmann
I had done these a while ago, when I looked into extending loplugin:ostr to do more automatic rewriting, and these were places where I needed to do something manually, for one reason or another, because the automatic rewriting would not pick it up correctly. However, I got distracted, and a wholesale automatic rewrite would still run into cases where an _ostr/_ustr instance from a library's .rodata would still be referenced after the library has already been dlcose'd. So I never came around to finishing all that. But there appears to be renewed interest in (automatic) rewritings here now, so it probably makes sense if I share this part of my work anyway. Change-Id: I3da9d38398e4bca373cb0000a9d34b49a36ad58a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166792 Reviewed-by: Stephan Bergmann <stephan.bergmann@allotropia.de> Tested-by: Jenkins
2024-03-31tdf#146619 Drop unused 'using namespace' in: sax/Gabor Kelemen
Change-Id: I1959402cb06f051ffe5f4a7e2e9f591b4908ea21 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/165521 Tested-by: Jenkins Reviewed-by: Gabor Kelemen <gabor.kelemen.extern@allotropia.de>
2024-01-27Drop std::as_const from css::uno::Sequence iterationsMike Kaganski
Obsoleted by commit 2484de6728bd11bb7949003d112f1ece2223c7a1 (Remove non-const Sequence::begin()/end() in internal code, 2021-10-15) and commit fb3c04bd1930eedacd406874e1a285d62bbf27d9 (Drop non-const Sequence::operator[] in internal code, 2021-11-05). Change-Id: Idbafef5d34c0d4771cbbf75b9db9712e504164cd Reviewed-on: https://gerrit.libreoffice.org/c/core/+/162640 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2023-12-10cid#1545177 COPY_INSTEAD_OF_MOVECaolán McNamara
and cid#1545179 COPY_INSTEAD_OF_MOVE cid#1545187 COPY_INSTEAD_OF_MOVE cid#1545188 COPY_INSTEAD_OF_MOVE cid#1545189 COPY_INSTEAD_OF_MOVE cid#1545196 COPY_INSTEAD_OF_MOVE cid#1545197 COPY_INSTEAD_OF_MOVE cid#1545204 COPY_INSTEAD_OF_MOVE cid#1545223 COPY_INSTEAD_OF_MOVE cid#1545236 COPY_INSTEAD_OF_MOVE cid#1545239 COPY_INSTEAD_OF_MOVE cid#1545253 COPY_INSTEAD_OF_MOVE cid#1545274 COPY_INSTEAD_OF_MOVE cid#1545286 COPY_INSTEAD_OF_MOVE cid#1545309 COPY_INSTEAD_OF_MOVE cid#1545311 COPY_INSTEAD_OF_MOVE cid#1545345 COPY_INSTEAD_OF_MOVE cid#1545358 COPY_INSTEAD_OF_MOVE cid#1545361 COPY_INSTEAD_OF_MOVE cid#1545365 COPY_INSTEAD_OF_MOVE cid#1545367 COPY_INSTEAD_OF_MOVE cid#1545372 COPY_INSTEAD_OF_MOVE cid#1545373 COPY_INSTEAD_OF_MOVE cid#1545377 COPY_INSTEAD_OF_MOVE cid#1545392 COPY_INSTEAD_OF_MOVE cid#1545399 COPY_INSTEAD_OF_MOVE cid#1545404 COPY_INSTEAD_OF_MOVE cid#1545408 COPY_INSTEAD_OF_MOVE cid#1545430 COPY_INSTEAD_OF_MOVE cid#1545439 COPY_INSTEAD_OF_MOVE cid#1545449 COPY_INSTEAD_OF_MOVE Change-Id: I3afe836a0bbc8bd70937035e60eb020435e413d2 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/160539 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2023-11-29Extended loplugin:ostr: saxStephan Bergmann
Change-Id: I7ee95e170b09a5a6765042ede50218332a822c7d Reviewed-on: https://gerrit.libreoffice.org/c/core/+/160104 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <stephan.bergmann@allotropia.de>
2023-11-27tdf#158302 fix build against system-libxml-2.12Miklos Vajna
Seen in a fedora:40 container, using --with-system-libcmis, --with-system-liblangtag and --with-system-xmlsec. Change-Id: I9d748d3dc0b70dbfdfcb6b99c9ce8440bda6f326 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/159980 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
2023-11-19Extended loplugin:ostr: saxStephan Bergmann
Change-Id: Icf6ffbc746dbbc790a5a248002ecd161413f120c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/159681 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2023-10-20Extended loplugin:ostr: Automatic rewrite O[U]StringLiteral: saxStephan Bergmann
Change-Id: I16c763164567293b096e132650c509cfc32fd407 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/158215 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2023-10-14Use exception ctors, instead of setting members laterMike Kaganski
Avoids overwriting source location in message Change-Id: Ia0290c7dd1ab3ea1357712a27ecab75c7b583dd4 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/157893 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2023-09-10using decls should come after #includeNoel Grandin
Change-Id: I058551e87bca42adede860f6f299b0f7ae2af3b5 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/156798 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2023-08-07tdf#150137 fastparser: don't crash on undeclared namespaceAron Budea
Change-Id: Icc8bbb391c7e34754b7274d67d73ff509827a3d0 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/155381 Tested-by: Aron Budea <aron.budea@collabora.com> Reviewed-by: Aron Budea <aron.budea@collabora.com>
2023-08-01tdf#146619 Remove unused #includes from C/C++ filesVenetia Furtado
Change-Id: Ia8b406b6a59086160a5167480c6d3bde6574ffbe Reviewed-on: https://gerrit.libreoffice.org/c/core/+/155029 Tested-by: Jenkins Tested-by: Gabor Kelemen <kelemeng@ubuntu.com> Reviewed-by: Gabor Kelemen <kelemeng@ubuntu.com>
2023-06-01Revert "Convert XFastParser into a normal C++ interface"Noel Grandin
This reverts commit 5e68d6cfade45f40b1ad46025a81afe4cb8dd337. Reason for revert: Seems like outside users have been using this API Change-Id: I8814cf1eb4f000eeb4cbbb5db9c282d001465993 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/152441 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2023-06-01Convert XFastParser into a normal C++ interfaceNoel Grandin
There is no need for it to be an UNO interface anymore (ever since we started supporting dynamic_cast on UNO objects). Which means that XImportFilter2 also needs become a C++ interface. Change-Id: Ice2db0f098271bba32b199bd083b08cb8410ce93 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/152388 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2023-04-30Use getXWeak in saxMike Kaganski
Change-Id: I24d61be2a1e1c21c08e50790b2d7bbb794c4fb07 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/150862 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2023-04-12tdf#39593: remove trim(), use o3tl::trim() insteadBayram Çiçek
trim(std::u16string_view in) and trim(std::string_view in) functions were removed and replaced with o3tl::trim(rString) function Change-Id: I29b2274422dbfe9dc26177c3e1dbf20786c811d7 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/150245 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2023-04-06Use more *string_viewMike Kaganski
Change-Id: Ic82bbb1b8d6b03066e66f5eb93e9a94b16b1a9f2 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/150072 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2023-03-18loplugin:stringadd use more O[U]StringCharNoel Grandin
Change-Id: I196e4539ad430a39415eff9d7170b33df7228230 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/149062 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2023-03-17elide some temporary OUStringsNoel Grandin
where we are calling append(OUString::createFromAscii( and we can rather call appendAscii Change-Id: I2366b518fe6d8d2484b00bb831cb79fb49bc0293 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/149043 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2023-03-06clang-tidy dead-storeNoel Grandin
Change-Id: I842114880c43dfcc342b6255b7d17befb905bccb Reviewed-on: https://gerrit.libreoffice.org/c/core/+/148345 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2023-02-16Drop 'using namespace ::std' in dirs s*Gabor Kelemen
Change-Id: If3119a1f2274aac0bf70576458e3adb4505a2a45 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/147076 Tested-by: Jenkins Reviewed-by: Gabor Kelemen <kelemeng@ubuntu.com>
2023-01-16Simplify FastAttributeListMike Kaganski
Change-Id: Id89edb25e35527e8603c32e44fb2940721aeda58 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/145562 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2023-01-15Merge SvXMLAttributeList to comphelper::AttributeListMike Kaganski
And simplify the latter, to always use "CDATA" type (as the former did). "CDATA" was used in all cases but one, where an empty string was used. Change-Id: I1b3bfae40e29628e4094d9a6e58a69a66865874c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/145526 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2023-01-15tdf#117266 sc oox: export vml button with a correct nameJustin Luth
Without a correctly formatted ID, LO was unable to import the shape into the spreadsheet. Now at least the button shows up and can be pressed. MS Word already showed the button before the patch, so nothing there has changed. That suggests that our problem may be more during import. This code path is also followed by DOC and DOCX formats, but they do completely different things with the results. This is super nasty code... Change-Id: I383736a7de9c3e94b427d5747e5949c0348dcecd Reviewed-on: https://gerrit.libreoffice.org/c/core/+/145509 Tested-by: Jenkins Reviewed-by: Justin Luth <jluth@mail.com>
2022-10-20remove commentNoel Grandin
that no longer makes sense after commit 25a7b268555d73248594b9d485b69cd0e4cf34cf (HEAD -> master) Author: Noel Grandin <noel.grandin@collabora.co.uk> Date: Thu Oct 20 12:47:39 2022 +0200 SAL_WARN->SAL_INFO in sax Change-Id: I298df432d61f90e558251cd1c0e8d3c220423c5d Reviewed-on: https://gerrit.libreoffice.org/c/core/+/141561 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2022-10-20SAL_WARN->SAL_INFO in saxNoel Grandin
This does not provide any value during normal debugging Change-Id: I6797183e64a3e7e90e1cc6b5ecdb92faa53d01d5 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/141554 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2022-10-12crashtesting: exception during dtorCaolán McNamara
Change-Id: I9874778ba79540cfde32bf59c3a63ebb72889dc7 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/141215 Tested-by: Caolán McNamara <caolanm@redhat.com> Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2022-10-11use std::unique_ptrCaolán McNamara
Change-Id: Ibb3d71c8d50e1ad7236a6fe01ff83d3cd1a866f3 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/141214 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2022-09-28avoid some ref-counting in a hot pathNoel Grandin
Change-Id: Ibae87fc4e2fbe11d52cd89134a253ac2215134a7 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/140690 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2022-08-18Move tools/diagnose_ex.h to comphelper/diagnose_ex.hxxStephan Bergmann
...so that its TOOLS_WARN_EXCEPTION can be used in comphelper/source/misc/logging.cxx in a follow-up commit. (And while at it, rename from diangose_ex.h to the more appropriate diagnose_ex.hxx. The comphelper module is sufficiently low-level for this immediate use case, so use that at least for now; o3tl might be even more suitable but doesn't have a Library until now. Also, for the immediate use case it would have sufficed to only break DbgGetCaughtException, exceptionToString, TOOLS_WARN_EXCEPTION, TOOLS_WARN_EXCEPTION_IF, and TOOLS_INFO_EXCEPTION out of include/tools/diagnose_ex.h into an additional new include/comphelper/diagnose_ex.hxx, but its probably easier overall to just move the complete include file as is.) Change-Id: I9f3222d4ccf1a9ac29d7eb9ba1530d53e2affaee Reviewed-on: https://gerrit.libreoffice.org/c/core/+/138451 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2022-08-18tdf#39593 Ruduce copy/paste code in Converter::converterDurationLiu Hao
Change-Id: Ic1b82b244ff614c8d5ab44f32bdc728deee24165 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/138465 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.stahl@allotropia.de>
2022-08-01use more string_view when dealing with attributesNoel Grandin
which means we don't need to call strlen on them, since we already know how long they are. Change-Id: Iefc76f38a23250e87a65c27df3634d562464a760 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/137679 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2022-07-28tdf#119840 remove some OUString allocationNoel Grandin
Change-Id: I488db37b3a60feb351d1ecd46278f6d5c3cdde5b Reviewed-on: https://gerrit.libreoffice.org/c/core/+/137535 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2022-07-22elide some makeStringAndClear() callsNoel Grandin
Change-Id: I3b80d0f5b6d39c071242bc6ccc1e4333886c835d Reviewed-on: https://gerrit.libreoffice.org/c/core/+/137309 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2022-07-06micro-optimisation in FastAttributeListNoel Grandin
Change-Id: If684357b8849258af213f06a52f71ea81ffac1e1 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/136844 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2022-07-06shave some cost off SaxContextNoel Grandin
most of the time, we can skip the ref-counting associated with these string fields Change-Id: I7afc1aa08f3337d7c61478eab92abc2cdd2b9d1c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/136843 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2022-06-09loplugin:unusedmethodsNoel Grandin
Change-Id: Ib89ab59f7ad7e90b2a44ddd122176cde904fba4d Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135520 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2022-05-27clang-tidy modernize-pass-by-value in saxNoel Grandin
Change-Id: I0357c7e3f5ae1d0a560057ac756b1118917a5e11 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135038 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2022-05-08osl::Mutex->std::mutex in SaxExpatParserNoel Grandin
Change-Id: I9d99497dfbc67cd4dd690da9db58aab0db114d36 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134021 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2022-05-06remove unnecessary sequenceToContainerNoel Grandin
If we are not going to manipulate the resulting vector, then it is actually slower, since we have to allocate more storage for the vector Change-Id: I65677007d105f4783603df74113ebed6db0b551b Reviewed-on: https://gerrit.libreoffice.org/c/core/+/133963 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2022-05-04Just use Any ctor instead of makeAny in saxStephan Bergmann
Change-Id: I3aec9eecc35eeabd2be61c73a57cff220843c9b0 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/133791 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2022-05-01use more string_view in variousNoel Grandin
found by examining uses of OUString::copy() for likely places Change-Id: I6ff20e7b273ad6005410b82719183c1122f8c018 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/133617 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2022-04-27add string_view wrappers for rtl::math::stringToDoubleNoel Grandin
Change-Id: I114bec72cb933238675e539a8388a607226827cd Reviewed-on: https://gerrit.libreoffice.org/c/core/+/133455 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2022-04-20use more FastAttributeIter::toViewNoel Grandin
Change-Id: I8a8ad5456fea349a45fca0aa468313cb04aa02f5 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/133198 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2022-03-18tdf#133603 increase cache size in CachedOutputStreamNoel Grandin
modern devices require bigger chunks of data to keep them busy Change-Id: I356327718fc20d937364b6ee726b0e94b4199e0f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/131734 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2022-03-12Introduce FastAttributeList::add(NS) taking std::u16string_viewMike Kaganski
... and simplify some places removing explicit conversions from OUString to OString. Change-Id: I4cdf9f3ee3101b3d00a0bbba53a983ed3bebce4f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/131445 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2022-03-03crashtesting: assert that !rtl::isAscii in xmlError messageCaolán McNamara
probably detected since: commit 089ce740f9f97f9c7b13e37a31acfc94984e9a3e Date: Thu Feb 24 17:45:18 2022 +0300 Deduplicate rtl_*String_newConcat*L or similar Change-Id: I389d0875463f2ac59fda9266b168bdc35c82de95 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/130917 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>