Noel Grandin
f71606c920
new loplugin:moveit
...
look for local variables that can be std::move'd to parameters
off by default, since it doesn't do proper data flow analysis
Change-Id: I3403a0fcffd165bdea6a772528bc53995c5fdb40
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135527
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk >
2022-06-10 13:13:15 +02:00
Stephan Bergmann
c387bc7dd1
The elements of XInvocation::invoke aOutParamIndex are non-negative
...
..so use o3tl::make_unsigned when comparing them against an expression of
unsigned integer type, instead of casting that expression to a signed type
Change-Id: I4fc0bd4447f55d5fd9bf893a4b22d6d2c2cfe3d7
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135280
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com >
2022-06-02 08:07:08 +02:00
Stephan Bergmann
0af4324c57
Use more appropriate type for SbiImage::GetString nId param
...
Change-Id: I4207830e3923ce9b4f7c0f59cf5880dfcf89979b
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135243
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com >
2022-06-01 21:20:29 +02:00
Stephan Bergmann
b19a2dfafa
Use more appropriate type for SbiImage::nStringIdx
...
Change-Id: I1448739b373c6f7b9f5e6ee5a725fa0a129a4fb4
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135204
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com >
2022-05-31 22:03:42 +02:00
Noel Grandin
5ecdedbf81
clang-tidy modernize-pass-by-value in basic
...
Change-Id: I9034ab95a4ccb58e36e77d911dd33cc50857c03a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135176
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk >
2022-05-31 15:11:27 +02:00
Caolán McNamara
a685679526
cid#1504574 Resource leak
...
make an owner for the PropertyMapEntries
Change-Id: Ie915a8a312f2b24488566814ad67fdeef89b5941
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135123
Tested-by: Jenkins
Tested-by: Caolán McNamara <caolanm@redhat.com >
Reviewed-by: Caolán McNamara <caolanm@redhat.com >
2022-05-30 16:00:35 +02:00
Stephan Bergmann
5060c50158
Use o3tl::make_unsigned in some places
...
...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-24 16:50:03 +02:00
Noel Grandin
30f1ef51e5
elide some OUString allocation
...
Change-Id: Iacbf1da6cdc77466d9f9da399b5cc17f5a87f0ed
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134833
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk >
2022-05-24 08:08:07 +02:00
Stephan Bergmann
41a967af06
Extend loplugin:redundantcast to trivial reinterpret_cast from T to itself
...
Change-Id: I7c0be7b435d6b5f97bdd40484023584146638d70
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134506
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com >
2022-05-18 10:52:59 +02:00
Noel Grandin
cfb15d06e8
in SbUnoObject constructor, only query for XTypeProvider
...
if we're going to use the result
Change-Id: I49ad11e287f58c1021e509f56d934aa3ce745b0d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134201
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk >
2022-05-11 21:55:45 +02:00
Noel Grandin
9f1701d01d
use more o3tl::getToken
...
found by inspecting call sites of OUString::getToken
Change-Id: I4269c7476c7aa46fac39528227e350568f0eb34a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/132644
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk >
2022-05-05 12:57:00 +02:00
Stephan Bergmann
b5ab864096
Just use Any ctor instead of makeAny in basic
...
Change-Id: I21d9679064c4e68a1492d3550f083c3c91b5b43b
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/133848
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com >
2022-05-05 07:13:54 +02:00
Noel Grandin
fdfd517a6f
loplugin:stringviewparam whitelist some more functions
...
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 >
2022-04-13 08:38:53 +02:00
Mike Kaganski
b32c85d0be
Move creation of case-insensitive variable name to a central place
...
SbxVariable::NameToCaseInsensitiveName might then be used wherever
such names may be needed (see e.g. tdf#148358).
Change-Id: I7749a12a05225398848cbf72700c6f0bc119bc22
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/132561
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com >
2022-04-05 11:30:24 +02:00
Mike Kaganski
de81c2545a
Related: tdf#144245 Optimize case-insensitive handling
...
1. Make BasicCollection::implGetIndexForName take OUString again,
after commit f7de7de118 made it take
std::u16string_view. All call sites pass OUStrings, and commit
ef32c3b4f9 made it create OUString
from the argument.
2. Have SbxVariable cache a case-insensitive variant of the name.
It is currently only used in the Collection implementation, but
may be used in other places; Tthe names are case-insensitive in
Basic, and VBA allows non-ASCII characters in names, so this
caching might be useful elsewhere.
3. Skip non-ASCII characters when calculating name hash, to allow
non-ASCII-containing strings still have some hash variance, when
at least some of the first 6 characters are ASCII.
Change-Id: If90ccea2c4b44c34967e6b764b6fab45b2976c40
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/132493
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com >
2022-04-04 11:06:00 +02:00
Deep17
1fb1f0be10
tdf#42982: improve UNO API error reporting
...
Change-Id: I82adf31db09d2157ee8f1c776f33e8a0107c3b51
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/131090
Tested-by: Jenkins
Reviewed-by: Ilmari Lauhakangas <ilmari.lauhakangas@libreoffice.org >
2022-03-07 21:19:01 +01:00
Andreas Heinisch
6a0f00d3b9
tdf#146742 - Move the initialization code of a method to SbMethod::Call
...
Change-Id: I516bacdcd22ed094a0e9b6e125e941f32fe88c82
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/129238
Tested-by: Jenkins
Reviewed-by: Andreas Heinisch <andreas.heinisch@yahoo.de >
2022-02-03 09:43:37 +01:00
Mike Kaganski
30483a6e06
Use default argument
...
Change-Id: I44e9c2e5de2c041f2839b14a057e1b88fd6ea01f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/129337
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com >
2022-02-03 08:16:03 +01:00
Noel Grandin
a2eaf99e46
make comphelper::OInterfaceContainerHelper4 more threadsafe
...
(*) make all the methods that require an external mutex take a
std::unique_lock as a parameter, so that call sites cannot forget
(*) make the forEach method drop the lock when firing listener methods,
to reduce the odds of deadlock
Change-Id: I0a80e3b3d1c1c03b7de4a658d31fcc2847690903
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128415
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk >
2022-01-14 21:04:10 +01:00
Gabor Kelemen
840b4eb2f3
Recheck modules [a-c]* with IWYU
...
See tdf#42949 for motivation
Change-Id: I74a3c3a67c3639376e2251c3eb917fa4139dfbd0
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/127808
Tested-by: Jenkins
Reviewed-by: Miklos Vajna <vmiklos@collabora.com >
2022-01-13 08:26:15 +01:00
Noel Grandin
26f46b861d
loplugin:flatten in accessibility..basic
...
Change-Id: If2cc282c2b135d634daf393a082c29049b10a677
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/127223
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk >
2021-12-21 13:43:06 +01:00
Noel Grandin
fcba66fa86
osl::Mutex->std::mutex in ModuleInvocationProxy
...
Change-Id: I2ec935fb1c53338f475d5e8aec877f84824a56e9
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/127074
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk >
2021-12-18 19:49:38 +01:00
Noel Grandin
b3c6b3a274
rtl::Static to thread-safe static
...
Change-Id: I35e2a252708228bdbeaee557ef35763c64608653
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/124884
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk >
2021-11-09 08:28:56 +01:00
Mike Kaganski
81a7d46d9f
Prepare for removal of non-const operator[] from Sequence in basic
...
Change-Id: If048bc301c38ac5ac5412a7d8f69231705088a50
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/124343
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com >
2021-10-29 06:50:32 +02:00
Noel Grandin
283a9790bf
loplugin:indentation check for indent inside block
...
look for places where the statements inside a block are
not indented
Change-Id: I0cbfa7e0b6fb194b2aff6fa7e070fb907d70ca2f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/123885
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk >
2021-10-20 15:39:38 +02:00
Julien Nabet
cf3971a941
Simplify Sequence in b*
...
Change-Id: I0817d9a35a9c3fc43badb6cc60727de69849b063
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/123720
Tested-by: Jenkins
Reviewed-by: Julien Nabet <serval2412@yahoo.fr >
2021-10-17 14:13:10 +02:00
Andrea Gelmini
e7c83595d7
Fix typos
...
Change-Id: Icd2f83bddcb993a6430d328d0bc51f38d70374ce
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/122412
Tested-by: Jenkins
Reviewed-by: Adolfo Jayme Barrientos <fitojb@ubuntu.com >
2021-09-22 06:24:49 +02:00
Andreas Heinisch
adb38e36e3
tdf#123144 - Always translate an error number to a vba error message
...
In addition, create a meaningful error message and don't create and
artificial error message if there exists a custom one.
Change-Id: I682e497ee3fdfe4da80fb17ab41c1b4cf90eb2cb
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/122206
Tested-by: Jenkins
Reviewed-by: Andreas Heinisch <andreas.heinisch@yahoo.de >
2021-09-19 18:46:35 +02:00
Noel Grandin
3afb514362
simplify static_cast after dynamic_cast
...
Change-Id: I53ae7f18519fdd878730d1d0316ebc408271c66d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/121811
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk >
2021-09-08 14:38:15 +02:00
Andreas Heinisch
ef32c3b4f9
tdf#144245 - Case-insensitive operation for non-ASCII characters
...
Support case-insensitive operation for non-ASCII characters in the
Collection object (VBA).
Change-Id: Ie17560cb9aac5bfb32aa041744445dd4839681d6
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/121534
Tested-by: Jenkins
Reviewed-by: Eike Rathke <erack@redhat.com >
Reviewed-by: Andreas Heinisch <andreas.heinisch@yahoo.de >
2021-09-07 09:51:26 +02:00
Noel Grandin
8024118d5c
clang-tidy:readability-redundant-member-init
...
Change-Id: Ibeff6e5cbc20ab86b1e9cb96292acb340849ede3
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/121149
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk >
2021-08-27 21:24:20 +02:00
Noel Grandin
4dc4065904
rtl::Static -> thread-safe static local
...
Change-Id: I9f8fe250813f4f376dc46c6f3d7e25e90fdbb50e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/120566
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk >
2021-08-17 22:40:40 +02:00
Mike Kaganski
736ef4ab06
No need in this function
...
Change-Id: I391183753e4fad800b7c69aef2e76a3780ce52a0
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/120244
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com >
2021-08-10 22:48:48 +02:00
Mike Kaganski
e510b30890
Use nStringSize instead of nStringOff
...
nStringSize is the actual size of the string block, and is the correct
end position to use to calculate last string length. nStringOff is not
updated during load, so using it makes no sense here.
It was this way ever since 039dbbcb96 .
Change-Id: I4fad1bdd6ed4af9dd7d29b5438ec23db0b815806
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/120243
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com >
Tested-by: Mike Kaganski <mike.kaganski@collabora.com >
2021-08-10 20:56:38 +02:00
Andreas Heinisch
3bcfb1aac1
tdf#143707 - Change strategy to support suffix type characters
...
In order to support the correct data type of numeric constants,
booleans, and default values for strings, the strategy to transport the
data type character to the runtime has been changed.
The type character will be added after the literal and the string
termination symbol in order to keep compatibility. This allows to
retrieve the correct type in StepLOADNC and in StepPARAM.
Any legacy written images are still possible to process, since if there
is a suffix type character where the data type character was directly
written after the numeric constant, it will be processed in StepLOADNC.
Without this fix, an optional parameter of type Variant, would still
include the suffixe type character, and will not be converted to the
correct type in StepPARAM.
Change-Id: I86c8192c6dc28457053fa7b23a073420e45407b2
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/119945
Tested-by: Jenkins
Reviewed-by: Andreas Heinisch <andreas.heinisch@yahoo.de >
2021-08-10 12:23:19 +02:00
Mike Kaganski
56be83fbb9
Move variable definition to usage site
...
Change-Id: I3d95551cb72b867e19a1a2bf75c73d1c3422a984
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/120132
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com >
2021-08-06 23:04:14 +02:00
Noel Grandin
14cfff500e
Pass context and resource string down to boost::locale separately
...
because this is often on a hot path, and we can avoid the splitting and
joining of strings like this.
Change-Id: Ia36047209368ca53431178c2e8723a18cfe8260a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/119220
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk >
2021-08-05 09:39:11 +02:00
Noel Grandin
1597cc5b3e
convert #defines to OUStringLiteral
...
mostly by doing
$ git grep -l '#define.*\"' -- *.cxx
| xargs perl -pi -e
's/^#define\s+(\w+)\s+(\".*\")/constexpr OUStringLiteral \1 =
u\2;/g'
Change-Id: Idface893449b0ef2a3c5254865a300585d752fbb
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/119669
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk >
2021-08-02 14:43:58 +02:00
Noel Grandin
bfc1600c6a
loplugin:indentation improve checks for brace alignment
...
Change-Id: I333100fda7e181f68f36b03279b3fbb8cb768310
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/117615
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk >
2021-06-28 10:47:34 +02:00
Noel Grandin
0afb2b63b3
fix some leaks in basic
...
Change-Id: I52c10cdbe9661974c908ee052336c779a40de402
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/115323
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk >
2021-05-10 15:14:48 +02:00
Noel Grandin
62f6d6ee8b
use more string_view in tools/stream
...
Change-Id: I2a957cd72d71fea717734488cdb3670e0bcdd6f4
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/114657
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk >
2021-04-27 09:27:44 +02:00
Noel Grandin
335de1a221
no need makeStringAndClear() when appending to buffer
...
it just creates an unnecessary temporary
Change-Id: Ide3cd99b2ac4f2a621e5d55ce4bdc95d05430709
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/114467
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk >
2021-04-22 12:37:39 +02:00
Noel Grandin
b08a2b2994
use OUString::Concat here, not OUStringLiteral
...
Change-Id: Ia2172bcab60f32c9d9d4f6ca0230484343eef69b
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/114321
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk >
2021-04-20 13:34:43 +02:00
Mike Kaganski
86d298f87f
Simplify some static variable initializations
...
Change-Id: I6cdd44aa66b9597ccc51fc3fd69b57485ccb3230
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/113515
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com >
2021-04-02 17:22:21 +02:00
Mike Kaganski
a0656ec6fc
const OUString -> const OUStringLiteral
...
Mostly automated rewrite
Change-Id: Ie020a083f898bc126b8fb039d4ecb2e687172da1
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/112965
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com >
2021-03-25 10:06:26 +01:00
Noel Grandin
c880d3e304
check for quit when calling Yield in loop
...
so we don't get stuck threads when the main application
quits
Change-Id: Id36e99267ceb4154873b6ef8ef494622fff6c19a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/112409
Tested-by: Jenkins
Reviewed-by: Michael Meeks <michael.meeks@collabora.com >
2021-03-14 08:20:53 +01:00
Mike Kaganski
fbaf865ffc
Drop "32" from names of SbxArray methods taking 32-bit indices
...
... a leftover from times when there were methods for 16-bit
as well as for 32-bit indices. 16-bit indices were removed in
commit 62f3f3d92a .
Change-Id: Idf8b1160e68e8b303cf75ea79dd7dbb3bd00275d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/112187
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com >
2021-03-09 13:22:18 +01:00
Arnaud Versini
08cb09c092
BASIC : use standard mutex from std.
...
Change-Id: Ie9abb32124b8718bbfde076f090180794c64f90e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/108629
Tested-by: Mike Kaganski <mike.kaganski@collabora.com >
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com >
2021-03-07 13:37:19 +01:00
Noel
1571fd8bfd
loplugin:refcounting in basic
...
Change-Id: I0c1e41436ddae176695a90c120303727aa3bc2ad
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/111306
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk >
2021-02-22 17:32:28 +01:00
Noel
1250aecd71
loplugin:stringviewparam extend to new..
...
O[U]StringBuffer methods
Change-Id: I0ffbc33d54ae7c98b5652434f3370ee4f819f6f4
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/110090
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk >
2021-01-29 09:25:12 +01:00