Age | Commit message (Collapse) | Author |
|
Shaves lots of string allocations, and uses optimized code paths
Change-Id: I8e33e2aecdc7e0d2f2c31b774daa36304b3973ac
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/173179
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
|
|
Change-Id: I154f0ff1769fbda361ec62f1dd589ca0d7686bd9
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/168506
Tested-by: Jenkins
Reviewed-by: Nagy Tibor <tibor.nagy.extern@allotropia.de>
|
|
Change-Id: I2df519a73f283c3a74353222826e82beaa98f017
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166194
Reviewed-by: Ilmari Lauhakangas <ilmari.lauhakangas@libreoffice.org>
Tested-by: Jenkins
Tested-by: Ilmari Lauhakangas <ilmari.lauhakangas@libreoffice.org>
|
|
Change-Id: Ib0a72355972662c6b902bca9a527be91fb3e1d17
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/164930
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Discovered by https://gerrit.libreoffice.org/c/core/+/163717
Like these:
C:\libcmis\inc\libcmis/document.hxx(51): warning C4589: Constructor of abstract class 'libcmis::Document' ignores initializer for virtual base class 'libcmis::Object'
C:\libcmis\inc\libcmis/document.hxx(51): note: virtual base classes are only initialized by the most-derived type
C:\libcmis\inc\libcmis/folder.hxx(58): warning C4589: Constructor of abstract class 'libcmis::Folder' ignores initializer for virtual base class 'libcmis::Object'
C:\libcmis\inc\libcmis/folder.hxx(58): note: virtual base classes are only initialized by the most-derived type
Change-Id: Icc7f94cc02796a86b47b025df69ec3db971ad11e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/163777
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
|
|
With Xcode 15.2, --enable-mergelibs started failing so export a couple
constructors.
Change-Id: If41b167bb349976f38c5da9385824d5f51dc5398
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/163326
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: I351a9127fb26369d8f598b6d6519d7e490fa476b
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/163190
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
and
cid#1546319 COPY_INSTEAD_OF_MOVE
cid#1546286 COPY_INSTEAD_OF_MOVE
cid#1546283 COPY_INSTEAD_OF_MOVE
cid#1546191 COPY_INSTEAD_OF_MOVE
cid#1545953 COPY_INSTEAD_OF_MOVE
cid#1545874 COPY_INSTEAD_OF_MOVE
cid#1545857 COPY_INSTEAD_OF_MOVE
cid#1545781 COPY_INSTEAD_OF_MOVE
cid#1545765 COPY_INSTEAD_OF_MOVE
cid#1545546 COPY_INSTEAD_OF_MOVE
cid#1545338 COPY_INSTEAD_OF_MOVE
cid#1545190 COPY_INSTEAD_OF_MOVE
cid#1545272 COPY_INSTEAD_OF_MOVE
cid#1545242 COPY_INSTEAD_OF_MOVE
cid#1545229 COPY_INSTEAD_OF_MOVE
Change-Id: I88813d9dbd87ce10375db8198028f8b70e23f0fa
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/162027
Tested-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
|
|
and
cid#1545519 COPY_INSTEAD_OF_MOVE
cid#1545516 COPY_INSTEAD_OF_MOVE
cid#1545501 COPY_INSTEAD_OF_MOVE
Change-Id: Icc6efaf8c8fe06c7acd629ef77eac6b228b98f4b
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/161255
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
|
|
And drop the default argument value from ZipStorage ctor.
Always pass it explicitly.
Change-Id: I8bcf78dc4db7763567f9d6873841d75c328ede7e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/160760
Tested-by: Mike Kaganski <mike.kaganski@collabora.com>
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
|
|
In deep detection, first check if it's a broken ZIP package. If it is,
set the RepairPackage media descriptor property to true.
Pass the RepairPackage value to the OOXML filter detection.
Change-Id: Ic958283f3cce92ac29ce93ac330cc9e409e3eb78
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/159976
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
|
|
Revert "Revert "tdf#118133 DOCX import: disable lazy-loading of tiff images""
This reverts commit c6bf16909db054ec5467ebdc0ea0c9dc07307048.
Lazy-loading doesn't work with cropped TIFF images, because in case of Lazy-load TIFF images
we are using MapUnit::MapPixel, but in case of cropped images we are using MapUnit::Map100thMM
and the crop values are relative to original bitmap size.
Change-Id: I2dbf6caf08d7899ec2eae683996d997809d62b89
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/158509
Tested-by: Jenkins
Reviewed-by: Balazs Varga <balazs.varga.extern@allotropia.de>
|
|
Change-Id: I91b63fa67ca9552a4725b9b7dcb8f7217195b3ba
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/156988
Tested-by: Jenkins
Reviewed-by: Gabor Kelemen <kelemeng@ubuntu.com>
|
|
This change provides 1st changes to get Gradients with
muti color stops imported from MSO in the oox import
filter. It supports currently multiple ColorStops and
transparency. Also 'border'(s) should work, but
-remember- this is work in progress.
Since it is work in progress it is currently and
temporaily secured by ENV VAR "MCGR_TEST=0", so when
not using this the master version will not be touched
at all.
The number defines various ColorStop tests, 0 for none,
but some changes are active, e.g. MSO import. You may
try 1 or 16 to see all your Gradients hard replaced by
something using that feature.
I will take care fo cleaning this up again when the
feature progresses/gets complete.
Change-Id: I92e10d8cd5150733741a6def20a542abf97bd903
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/149682
Tested-by: Jenkins
Reviewed-by: Armin Le Grand <Armin.Le.Grand@me.com>
|
|
this is one of the secondary analyses this plugin performs
Change-Id: I6fac8c926b53f1d909c5b183304744126549f2bc
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/143181
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: Ia553a24693f2ffc0f580c9869b82f0d01a1a0ffb
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/137693
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
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>
|
|
Change-Id: I16e7179b2851640b4d73665685dcc1e84042ddaf
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/136270
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
as part of replacing OptValue with std::optional, we need to mimc the
behaviour of std::optional::value(), which will throw
bad_optional_access
Change-Id: Icf5141cefd4623a6a1bb7b3a3449d3af382e01c1
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/136365
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Most of the call sites just ignore the fact that we are returning an
optional value here.
Which means that when an attribute is missing, they get an empty string
or zero.
And we seem to be fine with that.
So make a plugin that warns about calling value() on a temporay OptValue.
And add a utility method so we don't have to pay the cost of passing
a default value to getString()
The need for this is driven by wanting to change to std::optional, which
will throw an exception if code attempts to read an empty std::optional
Change-Id: Idb0a5ad1eac66b5caa93d6195928bad9e0b2ad70
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/136283
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
as a step in replacing OptValue with std::optional
Change-Id: Ia5d05c28a88beaced11ae1d0414de66106cc9e20
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/136269
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
as a step towards replacing OptValue with std::optional
Change-Id: Ic4afaca87034b1b794432ee4261a6495058b26fa
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/136268
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
as a step towards making OptValue into std::optional.
Change-Id: I3eae4034a846dd63a16e501abe4a6eba9d186a49
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/136266
Tested-by: Noel Grandin <noel.grandin@collabora.co.uk>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
as a step towards converting it to std::optional
Change-Id: I6f377967f2a495d8c29979444607c991aaaf5d63
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/136267
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
with emplace and operator*
as a step towards converting it to std::optional
Change-Id: I3fca397c7dcfe200962e2b81a423322e29787f20
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/136215
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
as a step towards converting it to std::optional
Change-Id: I49db0b13338388c92108fc2c27d8e662dcd954d7
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/136214
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
as a step towards converting it to std::optional
Change-Id: I198abb4ae85b1d82f465577ebd0eec37b78c1111
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/136213
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
as a step towards converting it to std::optional
Change-Id: I9b2201c29827fcddae3b46480065c90b2907e6cd
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/136210
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: Id6c8341b545c819521056926ef1b80d20d148c5f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/133795
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
Change-Id: I07f11bf12fbe1d1c2d812fa0965d6e632e1e1aba
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/133437
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
for which we have o3tl:: equivalents
Change-Id: I4670fd8b703ac47214be213f41e88d1c6ede7032
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/132913
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
In a next step to get the Diagram mechanism/ModelData independent
from oox, I moved the Text ModelData to svx, using a TextBody
struct. This is a 1st move that covers most of what the
algorithms to handle Diagram re-layout and other functionality
use. This will potentially have to be extended accordingly
when missing data is detected. It is potentially much more
simple as the oox TextBody, by purpose.
Due to functionality using that data I could now massively move
more of it to svx.
Change-Id: I6d6e6c572f119aeefa4e91eff56f58f3ceb6a31e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/132523
Tested-by: Jenkins
Reviewed-by: Armin Le Grand <Armin.Le.Grand@me.com>
|
|
It missed some occurrences of 0 when only looking into uninstantiated template
code, as Clang doesn't model them with an ImplicitCastExpr, even if the target
is known to be a (dependent) pointer type.
Looking into all template instantiations of course carries the risk that a given
use of 0 is meant to be interpreted as a pointer in some and as an integer in
other instantiations. But the only case where that happened in the current code
base is RegistryValueList::getElement (include/registry/registry.hxx), where {}
is arguably a better choice anyway. (And which would presumably also hold for
any future such cases.)
Change-Id: I708bcfc8bedc0a49c9282d7814eb325afa29905c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128462
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
Change-Id: I3f595585b78c9e5ac32d9fc345c55a4eb14101c5
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/124824
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: I85ca453f3add5ac5b59dc6f1ccb2cdb55f0a463c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/124333
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
|
|
Change-Id: I987c56feab147cdbeb4ad58bd5ebb23dce6dbbca
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/124215
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
|
|
Their default definitions may create/destroy temporary OutputDevice objects,
which requires that the class is defined at the site of instantiation of the
implicit definition.
The solution is to delete these unused methods. If they would happen to be
needed, then move the default definitions to the correct place.
This reverts commit 30a17b05fb8a860c1e53cb7cfc405b1cea0a9d15.
Change-Id: I43f4e76763ff4409e9527f44cd2d8e227982257c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/117574
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
|
|
https://developercommunity.visualstudio.com/t/error-c2027-use-of-undefined-type-with-declspecdll/1455069
[build CXX] oox/source/core/filterbase.cxx
C:\lo\src\core\include\rtl/ref.hxx(129): error C2027: use of undefined type 'OutputDevice'
C:\lo\src\core\include\oox/helper/graphichelper.hxx(50): note: see declaration of 'OutputDevice'
C:\lo\src\core\include\rtl/ref.hxx(127): note: while compiling class template member function 'rtl::Reference<reference_type>::~Reference(void)'
with
[
reference_type=OutputDevice
]
C:\lo\src\core\include\vcl/vclptr.hxx(216): note: see reference to function template instantiation 'rtl::Reference<reference_type>::~Reference(void)' being comp
iled
with
[
reference_type=OutputDevice
]
C:\lo\src\core\include\vcl/vclptr.hxx(64): note: see reference to class template instantiation 'rtl::Reference<reference_type>' being compiled
with
[
reference_type=OutputDevice
]
C:\lo\src\core\include\oox/helper/graphichelper.hxx(140): note: see reference to class template instantiation 'VclPtr<OutputDevice>' being compiled
make[1]: *** [C:/lo/src/core/solenv/gbuild/LinkTarget.mk:301: C:/lo/src/build/workdir/CxxObject/oox/source/core/filterbase.o] Error 2
Change-Id: I50ee1bf97b7075224525525ef074c0ffcc168485
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/117507
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
|
|
GraphicHelper was trying to use the current frame/
window to convert values, but during initial load
there is no current window.
Change-Id: I8a79501df1d2e83a13d3cfb64ae8e66152c60561
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/117470
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
to reduce the churn, we leave the existing constructor in place,
and add a clang plugin to detect when the value passed to the
existing constructor may contain transparency/alpha data.
i.e. we leave expressions like Color(0xffffff) alone, but
warn about any non-constant expression, and any expression
like Color(0xff000000)
Change-Id: Id2ce58e08882d9b7bd0b9f88eca97359dcdbcc8c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/109362
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Now with my GraphicFilter::MakeGraphicsAvailableThreaded() patches
for Impress images will be loaded in parallel as they are needed,
which should usually be more efficient than loading all of them
immediately.
This basically reverts commits:
b1319842a49cdf6512bbd9e81081e2a9edbd6089
04e27df3c162f1df02f061b94434a38d1eaa3a46
9eb8e2737d3a4d52ce1b0cc44091a3b7ecf59e3b
Change-Id: I46bb0d6d93fb69f03f464308f6fce1603aafdfd8
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/107945
Tested-by: Luboš Luňák <l.lunak@collabora.com>
Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
|
|
...for LIBO_INTERNAL_ONLY. These had been missed by
1b43cceaea2084a0489db68cd0113508f34b6643 "Make many OUString functions take
std::u16string_view parameters" because they did not match the multi-overload
pattern that was addressed there, but they nevertheless benefit from being
changed just as well (witness e.g. the various resulting changes from copy() to
subView()).
This showed a conversion from OStringChar to std::string_view to be missing
(while the corresponding conversion form OUStringChar to std::u16string_view was
already present).
The improvement to loplugin:stringadd became necessary to fix
> [CPT] compilerplugins/clang/test/stringadd.cxx
> error: 'error' diagnostics expected but not seen:
> File ~/lo/core/compilerplugins/clang/test/stringadd.cxx Line 43 (directive at ~/lo/core/compilerplugins/clang/test/stringadd.cxx:42): simplify by merging with the preceding assignment [loplugin:stringadd]
> File ~/lo/core/compilerplugins/clang/test/stringadd.cxx Line 61 (directive at ~/lo/core/compilerplugins/clang/test/stringadd.cxx:60): simplify by merging with the preceding assignment [loplugin:stringadd]
> 2 errors generated.
Change-Id: Ie40de0616a66e60e289c1af0ca60aed6f9ecc279
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/107602
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
Change-Id: I8ba1214500dddaf413c506a4b82f43d63cda804b
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/106559
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: I76e34e8020d98292e8ffde387542b7029f85a42d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/105754
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
When importing writerfilter, we change to oox when
importing images. This transition doesn't store any
previous contexts and all instances are reset. The
problem occurs when we have identical images because
the transition erases all caches we have to determine
if an image has already been imported or not, which
causes that we import the same image multiple times
which create unnecessary copies.
This introduces the XGraphicMapper, which can be used
to store the XGraphic for a key and can be transferred
between writerfilter to oox. With this we can remember
which images were already imported and don't create
unnecessary internal copies which decreases memory.
This also includes a test which checks that the import
and export doesn't produce unnecessary copies of
identical images. The test checks that for OOXML, ODF
and MS Binary formats.
Change-Id: I33dc19218c565937fab77e132b3a996c51358b6e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/103283
Tested-by: Jenkins
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
|
|
Recheck after 7-0 branchoff
Found with bin/find-unneeded-includes
Only removal proposals are dealt with here.
Change-Id: I7f5c35474b671facbda85a9538462dd4291add91
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/97655
Tested-by: Jenkins
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
|
|
Change-Id: I335e0c5cf7944efa487e4535a9e6a5baab2f36dd
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/95140
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
excluding the UDK headers of course
Change-Id: Iac7ab83d60265f7d362c860776f1de9d5e444ec0
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/93268
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Implemented highlight color in grouped shapes. It was missing
completely.
Co-Author: Balázs Regényi
Change-Id: I51207d01a205fbb24abc51c0d69042d6747570a5
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/91619
Tested-by: Jenkins
Tested-by: László Németh <nemeth@numbertext.org>
Reviewed-by: László Németh <nemeth@numbertext.org>
|
|
This reverts commit a84e3df74eecc8778e3d5be5dd80ad4ddb511edf.
Now that we know that making fields has negative side effects
like disabling assignment operator generation.
Change-Id: I7b45b7ead281cf3a9202ca6aabc55ee5033e5331
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/90332
Tested-by: Noel Grandin <noel.grandin@collabora.co.uk>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|