Commit Graph
5108 Commits
Author SHA1 Message Date
Noel Grandin 7d6e751faa loplugin:ostr basic
Change-Id: Ie5fc4676bd1cab2c0417b479bf08dda00936469a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167191
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2024-05-06 13:56:49 +02:00
Arnaud VERSINI a123c5b39a basic : use more OUString literals
Change-Id: I38f57c64c0d110e892982eaed2619c0915fe93b1
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166825
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Reviewed-by: Arnaud Versini <arnaud.versini@pm.me>
2024-05-05 14:44:04 +02:00
Arnaud VERSINI 7ab8d33522 basic : use std::u16string_view and new OUString literal
Change-Id: Id3cd708b98e1b0551955562afe3ac594bdc6e50a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167153
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Reviewed-by: Arnaud Versini <arnaud.versini@pm.me>
2024-05-05 13:42:05 +02:00
Caolán McNamara 41590e7d1f WaE: C6011 Dereferencing NULL pointer warnings
Change-Id: I8edb1fefe1b2b8a3db3ee8f3a0eed59c7f08a36e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166863
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Tested-by: Jenkins
2024-05-02 09:24:11 +02:00
Noel Grandin 6c4760f89c use more OUString literal in getBasicTypeName
Change-Id: I6e307e4387cbecac6391000b9ca7e632b2152b24
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166979
Tested-by: Noel Grandin <noel.grandin@collabora.co.uk>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2024-05-02 08:18:59 +02:00
Stephan Bergmann 8d775b9259 Use Windows dllmgr-x64 also for aarch64
At least, CppunitTest_basic_macros CPPUNIT_TEST_NAME=Coverage::Coverage_Iterator
(which exercises it in basic/qa/basic_coverage/test_declare_from_dll.bas)
succeeds.

Change-Id: Ife90d5b84d5fb7bb4948cfeaf48180a6929a1dff
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166695
Reviewed-by: Stephan Bergmann <stephan.bergmann@allotropia.de>
Tested-by: Jenkins
2024-04-26 12:43:59 +02:00
Luv Sharma a400c865a6 tdf#93727 Syntax Error on # in basic
Change-Id: I400a4061de580a5c91b0e4763cad40ae88a9f738
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/162639
Tested-by: Jenkins
Tested-by: Andreas Heinisch <andreas.heinisch@yahoo.de>
Reviewed-by: Andreas Heinisch <andreas.heinisch@yahoo.de>
2024-04-22 16:05:53 +02:00
Tuukka Orava f3d0a184c4 tdf#147132 Flatten Basic function implementations
Change-Id: I077e042c82cbefd1d46db5ca8d5983a0870a296c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/165903
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2024-04-09 10:51:14 +02:00
AmandaQuaresmaCoutinho bb89fe7ab6 tdf#147132 Flatten Basic function implementations
Change-Id: Ife7a94cdfa8b31ba2a2bcbdf28c9620bbc5348ad
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/165641
Tested-by: Jenkins
Tested-by: Ilmari Lauhakangas <ilmari.lauhakangas@libreoffice.org>
Reviewed-by: Ilmari Lauhakangas <ilmari.lauhakangas@libreoffice.org>
2024-04-08 19:29:34 +02:00
Mike Kaganski f2482fd96e Simplify VBALikeToRegexp a bit
This cleans up some unnecessary escaping both
inside and outside [] groups.

Change-Id: I5abcf0fce634f0d8809bf4d318f61b8c8f69a318
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/165703
Tested-by: Mike Kaganski <mike.kaganski@collabora.com>
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2024-04-03 04:35:10 +02:00
Mike Kaganski 38f731ff67 tdf#160478: fix Basic LIKE operator
1. The regex must match the whole input. Thus, the ^ and $ metacharacters
   must be replaced with \A and \z, which only match beginning and end of
   input, not any line start / end.
2. The * and ? metacharacters of LIKE must match newline character; thus,
   search flags must include UREGEX_DOTALL. To avoid changing TextSearch
   implementation, I use icu::RegexMatcher directly.

The direct use of icu::RegexMatcher also allowed to simplify the code by
calling icu::RegexMatcher::matches method.  This may perform better than
general-purpose utl::TextSearch::SearchForward.

Change-Id: I75776498b36f236da294462362ed5b36ed8cdf68
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/165700
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2024-04-02 19:47:35 +02:00
Gabor Kelemen 49a6a81965 tdf#146619 Drop unused 'using namespace' in: basic/
Change-Id: I55bd0c89880dd97307dde5a5b670e63f3ea66355
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/165536
Tested-by: Jenkins
Reviewed-by: Gabor Kelemen <gabor.kelemen.extern@allotropia.de>
2024-04-02 08:32:46 +02:00
Noel Grandin d547ad7755 convert NameContainer to comphelper::WeakImplHelper
Change-Id: If89ee5bf200affc04704b7f075f25cbf599c1e62
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/165494
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2024-03-29 07:41:58 +01:00
U-Aarons_Laptop\Aaron 26c30fd77b tdf#147132: Flatten Basic function implementations
Change-Id: I9fcbc87b7ce01d96ffb45ddd3a525831c7cdcdaa
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/165357
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2024-03-27 11:48:19 +01:00
Arnaud VERSINI 68b73e7a29 basic : use OUstring literal for XServiceInfo implementation
Change-Id: Ic4501ec887bb3f1249ab4a8da1eae07f6b2a22ef
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/164305
Tested-by: Jenkins
Reviewed-by: Arnaud Versini <arnaud.versini@pm.me>
2024-03-11 08:32:32 +01:00
Mike Kaganski 1ac5353bbb Use weak reference to SfxObjectShell in SfxEventHint to avoid use-after-free
The events may be processed after the shell has been destroyed. This is
happening reliably after commit e2bfc34d14
(Reimplement OleComponentNative_Impl to use IGlobalInterfaceTable,
2024-03-11) when controlling LibreOffice from external Java scripts; but
obviously, it could happen before as well.

Now SotObject inherits from cppu::OWeakObject, instead of SvRefBase.

Change-Id: I73a3531499a3068c801c98f40de39bdf8ad90b2b
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/164458
Tested-by: Mike Kaganski <mike.kaganski@collabora.com>
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2024-03-11 04:43:28 +01:00
Adam Seskunas 9071cd6e59 tdf#149714 BitsPerPixel property of Graphic has Boolean UNO type
- vcl change UNO type of UnoGraphicProperty::BitsPerPixel to sal_Int8 instead of sal_uInt8 which maps to BOOLEAN causing Basic to convert
non-0 values to True

- basic add CppUnitTest since thats where the problem was occuring

Change-Id: I0111199151fb5e001b6362e1359ad90bb039f064
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/163899
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2024-02-28 05:00:46 +01:00
Mike Kaganski 60dd46ee18 Simplify a bit
Change-Id: Id9640825e117531ed1b67db9e83349c556f291c7
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/164004
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2024-02-27 11:36:45 +01:00
Julien Nabet dd8fc8e24b Typo: alredy->already
Change-Id: I67fa846c71cf91563c3457cec98195b1886e3fa9
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/164025
Tested-by: Julien Nabet <serval2412@yahoo.fr>
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
2024-02-27 11:02:51 +01:00
Mike Kaganski 8bbfbe92c0 tdf#159908: return early to avoid nullptr dereference
When aLvalue is not a variable, its GetRealVar() returns nullptr.
That was dereferenced unconditionally later in the check of the
variable after NEXT.

Change-Id: Ia46f23a7e720431bf62ace998848b684aa8449e8
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/164002
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2024-02-27 10:33:52 +01:00
Mike Kaganski d37df8fd1a Fix warning C4312 when building with MSVC without -Wv:18
Discovered by https://gerrit.libreoffice.org/c/core/+/163717

Like these:

 C:/lo/core/sw/source/ui/dbui/addresslistdialog.cxx(426): warning C4312: 'reinterpret_cast': conversion from 'int' to 'void *' of greater size

Change-Id: Idbfbe8add89c8e219bdabcf28b741e2e31a5e345
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/163781
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2024-02-23 01:35:14 +01:00
Mike Kaganski ff23937c34 Fix warning C4459 when building with MSVC without -Wv:18
Discovered by https://gerrit.libreoffice.org/c/core/+/163717

Like these:

 C:/lo/core/oox/source/export/shapes.cxx(2411): warning C4459: declaration of 'XML_line' hides global declaration

Change-Id: I74738753254ad1c468025d25bfb0bfe21787180f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/163779
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2024-02-23 01:34:45 +01:00
Mike Kaganski b3e6bec350 Fix warning C4589 when building with MSVC without -Wv:18
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>
2024-02-23 01:34:11 +01:00
Laurent Balland 5378ce372a tdf#158890 Replace '?' with figure blank
...instead of regular blank
Do not modify other blanks (thousand separator, fraction separator)

Change-Id: I82f8023a4e55d8091545191dee55a88aba25dbdd
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/161737
Tested-by: Jenkins
Reviewed-by: Laurent Balland <laurent.balland@mailo.fr>
2024-02-17 08:59:22 +01:00
Adam Seskunas 95dace2eb1 tdf#154285 Check upper bound of arguments in SbRtl_CurDir
The LibreOffice Basic specification says CurDir should accept one
argument and in the case of a non-Windows system, ignore that argument
and simply return the current directory. So check that SbRtl_CurDir
accepts a maximum of two arguments.

Change-Id: Ia60114fac31aa4261c8251e26ef172a0370e6abc
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/163150
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Tested-by: Jenkins
2024-02-13 05:51:04 +01:00
Aron Budea 8318337c3e tdf#147132 tdf#154285 basic: Flatten and check param count of Is* fns
Change-Id: I6d27dd49613a5cc26f4244dadc9bdd65361a0475
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/162657
Tested-by: Jenkins
Reviewed-by: Aron Budea <aron.budea@collabora.com>
2024-02-09 00:30:21 +01:00
Mike Kaganski 942e9a79f0 Related: tdf#159458 Move variable URL re-creation to a central place
Change-Id: Ib73ae476f308b2579a15c9b2474a55e3558c134c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/162786
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2024-01-31 06:56:42 +01:00
Mike Kaganski 907d410789 tdf#159458: make sure to update unexpanded URL when renaming library
1. If passed new source URL is expanded (i.e., trying to expand it in
SfxLibraryContainer::checkStorageURL didn't change it), previously
aUnexpandedStorageURL was unchanged. It should be cleared - then it
will be set automatically to the URL to lib info file.

2. Try to create the "variable" path (starting with "$(USER)/basic/")
because this avoids absolute paths to the libraries, which make it
harder to move the profile.

Change-Id: Ie83ea9a32cfddf37727d238547663aeb72487ee3
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/162777
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2024-01-31 03:35:15 +01:00
Caolán McNamara 3808ef2b27 cid#1545535 COPY_INSTEAD_OF_MOVE
and

cid#1545526 COPY_INSTEAD_OF_MOVE
cid#1545442 COPY_INSTEAD_OF_MOVE
cid#1545426 COPY_INSTEAD_OF_MOVE
cid#1545425 COPY_INSTEAD_OF_MOVE
cid#1545387 COPY_INSTEAD_OF_MOVE
cid#1545379 COPY_INSTEAD_OF_MOVE
cid#1545337 COPY_INSTEAD_OF_MOVE
cid#1545334 COPY_INSTEAD_OF_MOVE
cid#1545289 COPY_INSTEAD_OF_MOVE
cid#1545282 COPY_INSTEAD_OF_MOVE
cid#1545270 COPY_INSTEAD_OF_MOVE
cid#1545237 COPY_INSTEAD_OF_MOVE

Change-Id: Iae44a7347c85ae2e367bf672214b2013f30466f6
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/161968
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2024-01-12 20:21:35 +01:00
Caolán McNamara 7e0afa422c ofz#65329 Fuzzing build failure
since:

commit 9cc8457abc
Date:   Fri Dec 15 23:09:19 2023 -0700

    tdf#128122 Updated BASIC CCur to reuse SvNumberFormatter

LibreOfficeOssFuzz.conf has --enable-ld=gold and that will just
crash on an unresolved symbol without any explanation, but building
without will give something useful, e.g.

sbxcurr.cxx:(.text._Z14ImpGetCurrencyPK9SbxValues[_Z14ImpGetCurrencyPK9SbxValues]+0x89f): undefined reference to `SbiInstance::GetNumberFormatter()'
/usr/bin/ld: sbxcurr.cxx:(.text._Z14ImpGetCurrencyPK9SbxValues[_Z14ImpGetCurrencyPK9SbxValues]+0xbf7): undefined reference to `SbiInstance::PrepareNumberFormatter(unsigned int&, unsigned int&, unsigned int&, o3tl::strong_int<unsigned short, LanguageTypeTag> const*, DateOrder const*)'

Change-Id: I4b555760a609ec04fd85f7ba9c198a3d2ac712c5
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/161294
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2023-12-29 14:54:54 +01:00
Jonathan Clark 9cc8457abc tdf#128122 Updated BASIC CCur to reuse SvNumberFormatter
Previously, BASIC CCur used a custom, single-purpose currency string
parser which did not properly accommodate the user's locale setting.
This change replaces the custom parser with SvNumberFormatter, which
does correctly respect system locale.

Change-Id: I179915eb080e876e5e550dd350fdb86d7fa2bf4c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/160848
Tested-by: Jenkins
Reviewed-by: Andreas Heinisch <andreas.heinisch@yahoo.de>
2023-12-23 09:12:24 +01:00
Caolán McNamara 21dd05a2a2 cid#1557601 COPY_INSTEAD_OF_MOVE
and

cid#1546498 COPY_INSTEAD_OF_MOVE
cid#1546384 COPY_INSTEAD_OF_MOVE
cid#1546376 COPY_INSTEAD_OF_MOVE
cid#1546374 COPY_INSTEAD_OF_MOVE
cid#1546373 COPY_INSTEAD_OF_MOVE
cid#1546368 COPY_INSTEAD_OF_MOVE
cid#1546365 COPY_INSTEAD_OF_MOVE
cid#1546356 COPY_INSTEAD_OF_MOVE
cid#1546340 COPY_INSTEAD_OF_MOVE
cid#1546266 COPY_INSTEAD_OF_MOVE
cid#1546236 COPY_INSTEAD_OF_MOVE
cid#1546188 COPY_INSTEAD_OF_MOVE
cid#1546178 COPY_INSTEAD_OF_MOVE
cid#1546166 COPY_INSTEAD_OF_MOVE
cid#1546156 COPY_INSTEAD_OF_MOVE
cid#1546144 COPY_INSTEAD_OF_MOVE
cid#1546143 COPY_INSTEAD_OF_MOVE
cid#1546100 COPY_INSTEAD_OF_MOVE
cid#1546078 COPY_INSTEAD_OF_MOVE
cid#1546041 COPY_INSTEAD_OF_MOVE
cid#1546036 COPY_INSTEAD_OF_MOVE
cid#1546033 COPY_INSTEAD_OF_MOVE

Change-Id: Ib3586d93198992e206baf5c2de5a663d5574aa3c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/160979
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2023-12-19 17:18:42 +01:00
Caolán McNamara de4b3a135f cid#1545970 COPY_INSTEAD_OF_MOVE
and

cid#1545957 COPY_INSTEAD_OF_MOVE
cid#1545944 COPY_INSTEAD_OF_MOVE
cid#1545939 COPY_INSTEAD_OF_MOVE
cid#1545931 COPY_INSTEAD_OF_MOVE
cid#1545926 COPY_INSTEAD_OF_MOVE
cid#1545909 COPY_INSTEAD_OF_MOVE
cid#1545899 COPY_INSTEAD_OF_MOVE
cid#1545896 COPY_INSTEAD_OF_MOVE
cid#1545894 COPY_INSTEAD_OF_MOVE
cid#1545858 COPY_INSTEAD_OF_MOVE
cid#1545823 COPY_INSTEAD_OF_MOVE
cid#1545820 COPY_INSTEAD_OF_MOVE
cid#1545819 COPY_INSTEAD_OF_MOVE
cid#1545772 COPY_INSTEAD_OF_MOVE
cid#1545749 COPY_INSTEAD_OF_MOVE
cid#1545743 COPY_INSTEAD_OF_MOVE
cid#1545739 COPY_INSTEAD_OF_MOVE
cid#1545635 COPY_INSTEAD_OF_MOVE
cid#1545603 COPY_INSTEAD_OF_MOVE
cid#1545602 COPY_INSTEAD_OF_MOVE
cid#1545592 COPY_INSTEAD_OF_MOVE
cid#1545544 COPY_INSTEAD_OF_MOVE
cid#1545532 COPY_INSTEAD_OF_MOVE
cid#1545520 COPY_INSTEAD_OF_MOVE
cid#1545512 COPY_INSTEAD_OF_MOVE
cid#1545490 COPY_INSTEAD_OF_MOVE
cid#1545483 COPY_INSTEAD_OF_MOVE
cid#1545467 COPY_INSTEAD_OF_MOVE
cid#1545461 COPY_INSTEAD_OF_MOVE
cid#1545458 COPY_INSTEAD_OF_MOVE
cid#1545428 COPY_INSTEAD_OF_MOVE
cid#1545394 COPY_INSTEAD_OF_MOVE
cid#1545385 COPY_INSTEAD_OF_MOVE
cid#1545383 COPY_INSTEAD_OF_MOVE
cid#1545366 COPY_INSTEAD_OF_MOVE
cid#1545357 COPY_INSTEAD_OF_MOVE

Change-Id: I76224326977b4067b94ca3176cad1ca6de17930a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/160847
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2023-12-16 22:39:20 +01:00
Noel Grandin 6ba9e3323d loplugin:unusedfields
The sPassword field in SvtHistoryOptions became redundant
after
    commit c0fffdc36d
    Author: Samuel Mehrbrodt <samuel.mehrbrodt@allotropia.de>
    Date:   Mon Oct 2 12:35:21 2023 +0200
    [API CHANGE] Remove deprecated Password config item

Change-Id: Ie0c4597da5cd510f405400c215110c1e357cb497
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/160615
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2023-12-13 18:09:16 +01:00
Mike Kaganski 2b4094195e Clean up SvStream API a bit
Change-Id: Ic9847185e8f551eeb05715902374d7a9a9032f60
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/160546
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2023-12-11 07:10:31 +01:00
Caolán McNamara a58c0d4cef cid#1556778 COPY_INSTEAD_OF_MOVE
and

cid#1546474 COPY_INSTEAD_OF_MOVE
cid#1546473 COPY_INSTEAD_OF_MOVE
cid#1546469 COPY_INSTEAD_OF_MOVE
cid#1546467 COPY_INSTEAD_OF_MOVE
cid#1546458 COPY_INSTEAD_OF_MOVE
cid#1546448 COPY_INSTEAD_OF_MOVE
cid#1546446 COPY_INSTEAD_OF_MOVE
cid#1546441 COPY_INSTEAD_OF_MOVE
cid#1546424 COPY_INSTEAD_OF_MOVE
cid#1546377 COPY_INSTEAD_OF_MOVE
cid#1546374 COPY_INSTEAD_OF_MOVE
cid#1546352 COPY_INSTEAD_OF_MOVE
cid#1546334 COPY_INSTEAD_OF_MOVE
cid#1546328 COPY_INSTEAD_OF_MOVE
cid#1546310 COPY_INSTEAD_OF_MOVE
cid#1546303 COPY_INSTEAD_OF_MOVE

Change-Id: I8a43fdd574857ba1d3ec416f23c8269a9a08e12f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/160515
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2023-12-09 22:38:50 +01:00
Stephan Bergmann 1cb523eee4 Extended loplugin:ostr: basic
Change-Id: I041913b1fe2722145d770e5cdcf90cdf22957873
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/159728
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2023-11-20 09:17:06 +01:00
Julien Nabet c05595d242 c++20: use std::erase instead of std::removed followed by erase (part 1)
Change-Id: I8d038fc37a4de25bdeff2e2cc55775e3981240b7
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/159610
Tested-by: Jenkins
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
2023-11-18 18:38:01 +01:00
Noel Grandin 8faf693cd1 loplugin:fieldcast in ModuleSizeExceeded
Change-Id: I1903967d94fcd738b9e2ed8de9a19d42614a749e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/159252
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2023-11-10 09:53:01 +01:00
Noel Grandin b875ceabf0 loplugin:fieldcast in SbModule
Change-Id: I92084a1cf31832404aca43f0c8e2137a33978976
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/159251
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2023-11-10 09:52:53 +01:00
Laurent Balland 443027cd71 tdf#156449 Preserve '0' or '?' in exponent
Exponent in scientific number may use '?' as blank like in format "0.00E+?0"
This change:
- adds interpreatation of '0' and '?' in exponent
- adds "blank-exponent-digits" attribute to scientific number for import
  and export to ODF
- prevents using exponent with only '?'. There must be at least one '0'
  in exponent
- adds QA test of such format and test import/export/import to ODF and OOXML
- corrects one basic test

Change-Id: If52edc632a161f842270bb2fd77af535e2b978d4
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/154986
Tested-by: Jenkins
Reviewed-by: Laurent Balland <laurent.balland@mailo.fr>
2023-11-01 11:43:54 +01:00
Stephan Bergmann bd6fb0cd3e Extended loplugin:ostr: Rewrite some O[U]StringLiteral -> O[U]String
...in include files.  This is a mix of automatic rewriting in include files and
manual fixups (mostly addressing loplugin:redundantfcast) in source files that
include those.

Change-Id: I1f3cc1e67b9cabd2e9d61a4d9e9a01e587ea35cc
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/158337
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2023-10-23 11:04:42 +02:00
Stephan Bergmann 625705f10e Extended loplugin:ostr: Automatic rewrite O[U]StringLiteral: basic
Change-Id: Ic82e02ff43db09174a74f4e584e2ce50e8983556
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/158145
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2023-10-19 15:17:53 +02:00
Stephan Bergmann 7a349aa4f3 Suppress some upcoming loplugin:ostr OUStringLiteral -> OUString rewrites
...which would not work, as calling constexpr SbxVariable::MakeHashCode on those
vars would no longer be constant expressions

Change-Id: Ib848a6405dc270a1a5b9a92084fa2d063ea37892
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/158134
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2023-10-19 09:09:33 +02:00
Stephan Bergmann b4844c310b Repurpose loplugin:stringstatic for O[U]String vars that can be constexpr
...now that warning about O[U]String vars that could be O[U]StringLiteral is no
longer useful

Change-Id: I389e72038171f28482049b41f6224257dd11f452
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/157992
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2023-10-15 21:15:49 +02:00
Aron Budea c4c017d1b8 tdf#147132 tdf#154285 Flatten and check param count of IsMissing fn
Change-Id: I17d79dcedf2b2e1cd45ef2eb82ff5e89a9bb2b46
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/155028
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2023-10-13 17:04:16 +02:00
Stephan Bergmann dcea29c283 Make NC_ constexpr-friendly
...by moving the char8_t -> char reinterpret_cast out of any potential constexpr
paths into a new TranslateId::getId.  And demonstrate constexpr'ability by
making the aCategories var in OApplicationIconControl::Fill
(dbaccess/source/ui/app/AppIconControl.cxx) constexpr.  (And there might be more
such cases that could now be made constexpr.)

Change-Id: I0b4e3292faf8f6b901f9b9e934e1aa6bf0f583ff
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/157862
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2023-10-12 18:17:49 +02:00
OmkarAcharekar 95df8cda94 tdf#147132 Flatten Basic function implementations
Change-Id: I91ab40003011a7c537faa40daf3db85a13946c69
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/157669
Tested-by: Jenkins
Tested-by: Ilmari Lauhakangas <ilmari.lauhakangas@libreoffice.org>
Reviewed-by: Ilmari Lauhakangas <ilmari.lauhakangas@libreoffice.org>
2023-10-07 17:40:00 +02:00
Noel Grandin d9e322d60f replace ErrorInfo with simpler mechanism
Instead of returning ErrCode class everywhere, return a new
class ErrrCodeMsg, which combines an ErrCode with the other
parameters that are used to control the error reporting.

I do not change everything that uses ErrCode here, I started
from SfxBaseController/SfxMedium and worked outwards.

This change serves two purposes

(1) Replace the extremely whacky ErrorInfo mechanism we were
using to smuggle information into the error handler reporting
mechanism with a very straightforward approach of just combining it
into the error class.
(2) Allow us to capture the source location that produced the error,
which makes debugging the source of a problem soooo much easier.

Change-Id: I978b8f00c9851b41a216c7ebdef2ef94251d5519
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/157440
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2023-10-03 10:12:41 +02:00
Arnaud Versini 08a2de2023 basic : remove useless allocation in BasicDLLImpl
Change-Id: I8e2628da08cb621087915dcfb4d55ddacfeaabc1
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/157048
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2023-09-20 08:07:30 +02:00