Age | Commit message (Collapse) | Author |
|
Change-Id: I784fbc3b39a645c7984aa836cc32980343ddd1f5
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/124095
Tested-by: Jenkins
Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
|
|
std: :unique_lock::release() does not unlock.
Change-Id: Ida5a28a8b1c275a0a702121bf00faeaf76a57426
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/124063
Reviewed-by: Arnaud Versini <arnaud.versini@libreoffice.org>
Tested-by: Jenkins
|
|
It's faster, and at least when compiling with Clang it should work
fine.
Change-Id: I474857c2a54b8032b74202ccd5c67d25f6062790
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/124055
Tested-by: Jenkins
Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
|
|
This first allocates space based on the two items, and only
afterwards it reserves space for all items, possibly allocating
again.
This partially reverts commit 8546cdb2ad25b03ac152615357cab00 .
Change-Id: I8668cb03881766fc5078ab5e411efe56e6f3009e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/124054
Tested-by: Jenkins
Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
|
|
Otherwise we'd be trying to resolve unknown symbols repeatedly.
Change-Id: I1c1eb9f97a1f64436ad0858ceff75fa29343979a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/124053
Tested-by: Jenkins
Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
|
|
...by making the OUString's pData point to the OUStringLiteral, instead of
copying the contained characters. This is one of the improvements that had not
been done as part of e6dfaf9f44f9939abc338c83b3024108431d0f69 "Turn
OUStringLiteral into a consteval'ed, static-refcound rtl_uString": "To keep
individual commits reasonably manageable, some consumers of OUStringLiteral in
rtl/ustrbuf.hxx and rtl/ustring.hxx are left in a somewhat odd state for now,
where they don't take advantage of OUStringLiteral's equivalence to rtl_uString,
but just keep extracting its contents and copy it elsewhere. In follow-up
commits, those consumers should be changed appropriately, making them treat
OUStringLiteral like an rtl_uString or dropping the OUStringLiteral overload in
favor of an existing (and cheap to use now) OUString overload, etc." (Simply
dropping the OUStringLiteral overload was not possible in this case, though, as
that would have lead to ambiguities among the various OUString and
std::u16string_view overloads.)
The now-deleted OUStringLiteral rvalue reference overload means that some
existing assignments from ternary-operator OUStringLiteral<N> to OUString no
longer compile and had to be replaced with uses of std::u16string_view. Those
had not already been replaced in e6dfaf9f44f9939abc338c83b3024108431d0f69
because they happened to use OUStringLiteral instances of identical length N in
both arms of the ternary operator, so did not already start to fail to compile
back then.
Change-Id: I328e25b8324d045774e811d20a639f40d6a9a960
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/124040
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
Change-Id: Ifa96b7f273f7c154fdd267efba7271765ff7ae45
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/123728
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
Change-Id: Ia3e4dd8cad79b156d44eb03f1ae3d308204df2e9
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/123691
Tested-by: Jenkins
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
|
|
Change-Id: I05be42fde3f2b66d20c337583d8f8f92143bcb58
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/123032
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
Change-Id: I54ef4d1b492409265496c7f2b852568274bcf073
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/123321
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: I2df73d7959dd24882f75130f0fd03ff096dce8d8
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/123322
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Needs 5056 bytes of pre-calculated data.
Change-Id: I138d9dc80c176f675a6854fe906e235c98efcbc0
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/122947
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
|
|
Change-Id: I8ba202232fa42765a8b04113639fdac4b5724aa2
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/122941
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
|
|
...compared to a full-blown O[U]String, for temporary objects holding an
O[U]StringConcat result that can then be used as a std::[u16]string_view.
It's instructive to see how some invocations of operator ==, operator !=, and
O[U]StringBuffer::insert with an O[U]StringConcat argument required implicit
materialization of an O[U]String temporary, and how that expensive operation has
now been made explicit with the explicit O[U]StringConcatenation ctor.
(The additional operator == and operator != overloads are necessary because the
overloads taking two std::[u16]string_view parameters wouldn't even be found
here with ADL. And the OUString-related ones would cause ambiguities in at
least sal/qa/rtl/strings/test_oustring_stringliterals.cxx built with
RTL_STRING_UNITTEST, so have simply been disabled for that special test-code
case.)
Change-Id: Id29799fa8da21a09ff9794cbc7cc9b366e6803b8
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/122890
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
Change-Id: I43474265a9b3e1d07394c5f7e429e081d67f2eda
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/122935
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
|
|
Change-Id: I80201148684f6e297ff0c880c0dbbc346129a557
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/122864
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
|
|
Change-Id: I18b98f4be3212199004a1bb8fd8725fe71254ec4
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/122870
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
|
|
A mistake in eae24a9488814e77254d175c11fc4a138c1dbd30
Change-Id: I0da64366e4c39b3f5559e8a1c757a94d811f041f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/122869
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
|
|
An overlook from commit be8da97976658ff19b4dd010bff328cd3f424c1b
Change-Id: I2f639a9d865b43b38e19ad35a0a9e6b5bc1c1c8f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/122863
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
|
|
Change-Id: Ia88ceaaad700bf3c2c8db9bb19146b75146dad3d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/122861
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
|
|
Change-Id: I699f22aac871fdcef9ee9326ac30091239fa02be
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/122862
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
|
|
Change-Id: I39ed2485a67ec7a8b24ab90ea0d69a5982374334
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/122860
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
|
|
Change-Id: I47ac4ff7d82eb5732ad54e3b42c18c3665c83b82
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/122845
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
> sal/cppunittester/cppunittester.cxx(553,115): error: format specifies type 'unsigned int' but the argument has type 'ULONG64' (aka 'unsigned long long') [-Werror,-Wformat]
> printf("\tat %s in %s: line: %lu: address: 0x%0X\n", pSymbol->Name, line->FileName, line->LineNumber, pSymbol->Address);
> ~~~ ^~~~~~~~~~~~~~~~
> %0llX
> sal/cppunittester/cppunittester.cxx(558,64): error: format specifies type 'unsigned int' but the argument has type 'ULONG64' (aka 'unsigned long long') [-Werror,-Wformat]
> printf("\tat %s, address 0x%0X.\n", pSymbol->Name, pSymbol->Address);
> ~~~ ^~~~~~~~~~~~~~~~
> %0llX
> sal/cppunittester/cppunittester.cxx(576,50): error: format specifies type 'unsigned int' but the argument has type 'DWORD' (aka 'unsigned long') [-Werror,-Wformat]
> printf("*** Exception 0x%x occurred ***\n\n",ex->ExceptionRecord->ExceptionCode);
> ~~ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> %lx
...but where SYMBOL_INFO::Address is documented to be of type ULONG64, which in
turn is documented to be a typedef for unsigned __int64, for which there
is the MSVC-extension I64 format specifier
Change-Id: Ibed1d3fa49ac6fd988174c6041071292fc66dd3d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/122872
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
Change-Id: I6a529d2eb737d284bf1e9c1857680c33581f5e0e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/122846
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
Change-Id: I71be097d5051d39295f9f85d3e2329564388b4c5
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/122851
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
Change-Id: I2c68832a23d80dbe208212ce36b14b21b5312f5c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/122850
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
Change-Id: Ib7b3bfb7a3162e032cf6c9bf7f19576434592a00
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/122849
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
Change-Id: Ia374fe0a7a0392e91821fecd1e6ee5917864d59c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/122848
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
Change-Id: I48ee1c1906ab06a487059128eb1eba0d6adb068f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/122847
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
Change-Id: I9963a527d2323f4df8c3b46c13f5b7993e22f163
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/122855
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
|
|
Change-Id: I368123ce4ffdfb0e5c47e80cf4fece0c6ddc5f9d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/122854
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
|
|
Fill it in the correct order, starting from the middle
Change-Id: Id35475e391d771d6c23252124a92825b24b55e0c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/122853
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
|
|
Change-Id: Iee8966eeeaea461e34b5d22b80cb612dfaa57fe4
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/122750
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
|
|
Change-Id: I09ab406a8b7279801ce79b2f9c0a0011f6db05be
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/122749
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
|
|
This is clang-cl's equivalent of -fvisibility-inlines-hidden,
and it seems to be also sort of the equivalent of MSVC's
-Zc:inline. So it saves build time and disk space.
Clang docs say that this is binary compatible in only one
direction, so our public C++ code shouldn't be using this,
as external C++ code could try to use exported inlines
that are no longer there.
Change-Id: Ie6217808f8ee4a15344183abfc65038e1558d1b0
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/122352
Tested-by: Jenkins
Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
|
|
Change-Id: I6b40642c7574a1863658854d206ed849517dbd0f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/122130
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
|
|
Change-Id: I0186e8f1566ec2e4cec768cc18bdeba0bae182b9
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/122033
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
warning: Excessive padding in 'struct ImplTextEncodingData' (8 padding
bytes, where 0 is optimal).
warning: Excessive padding in 'struct ImplByteConvertData' (10 padding
bytes, where 2 is optimal).
warning: Excessive padding in 'struct ImplDBCSConvertData' (10 padding
bytes, where 2 is optimal).
warning: Excessive padding in 'struct DirectoryItem_Impl' (11 padding
bytes, where 3 is optimal).
Change-Id: Ia19f192099c305734256103c7cdc0f64e398b6af
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/121902
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
To make complex backtraces readable.
Change-Id: I3a95d03d97c8e6d1aa7aeab37957d3b8441c3c90
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/121724
Tested-by: Jenkins
Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
|
|
Change-Id: Ib4351ba7a585ada3887f1cbeb5d676733250598b
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/121585
Tested-by: Jenkins
Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
|
|
Change-Id: Ifc655e4d5e2f3eb934b407e146ee564e3db0146b
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/121584
Tested-by: Jenkins
Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
|
|
The backtrace_symbols() function provides backtraces that often
miss many function names, try harder to resolve them, using addr2line
is the best (only?) working solution I've found.
Change-Id: Ieda06fc52735596e499fb7f9443cae13d134da5c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/121539
Tested-by: Jenkins
Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
|
|
Change-Id: I54495044f2bd487eb9315c7a974b9859b26235a2
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/121588
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
|
|
so the multiple unit tests don't stomp on each other.
This fixes a couple of things in my earlier attempt
(*) actually set the env variable on Windows
(*) don't use a global variable to test the env var, because that
variable might be initialised BEFORE the env var is actually set
Change-Id: Id43a1dd2fbd324691e0b6578c9026b8a523012e8
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/121436
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: I4449d3c87adbcb94c721799aa6de1d615eb7041f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/121070
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
|
|
Dynamically trying to obtain the two PSAPI functions was apparently originally
done because "This version can fail because PSAPI.DLL is not always part of
NT 4 despite MSDN Libary 6.0a say so", according to the comment added with
961512bd9ae008fdd8ab5cdf1ba6b5d25ffb0429 "#94875# Added additional method (for
NT4) to determine the module containing an address". (That comment was removed
again in 515d2579d305a6127c6c194319a58eac62437e33 "Replace legacy dynamically-
loaded functions with statically linked ones", which curiously left the dynamic
loading of PSAPI.DLL in place there, though.)
<https://docs.microsoft.com/en-us/windows/win32/api/psapi/nf-psapi-enumprocessmodules>
states that the PSAPI functionality is available in "Kernel32.dll on Windows 7
and Windows Server 2008 R2; Psapi.dll (if PSAPI_VERSION=1) on Windows 7 and
Windows Server 2008 R2; Psapi.dll on Windows Server 2008, Windows Vista, Windows
Server 2003 and Windows XP". I do not find any mention of PSAPI_VERSION across
our code base, so assume that PSAPI_VERSION=1 would be some legacy mode that we
do not use, so with our baseline of Windows 7 (cf. README.md), relying on the
PSAPI functionality being available without adding anything specific to
gb_Library_use_system_win32_libs,sal should presumably be OK.
Change-Id: I55ab29be2a3ee3984c6987e953819cb2e92e4aa8
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/121136
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
In sc/qa/unit/ucalc_formula.cxx, dropping the capture-default from the
lExpectedinF lambda revealed that MSVC in C++17 mode (i.e., when building
without --with-latest-c++) requires ROW_RANGE (a local const int variable from
the enclosing TestFormula::testTdf97369) to be captured, even though all uses of
that variable within the lambda body are constant expressions. That is still
true at least for the latest Visual Studio 2019 version 16.11.1. (This is not
an issue for the lExpectedinH and lExpectedinI lambdas a few lines further down,
as they, in addition to using that ROW_RANGE, also use the local const double
variables SHIFT1 and SHIFT2, whose uses are not constant expressions, so
they are implicitly captured and loplugin:unusedcapturedefault does not suggest
dropping those lambdas' capture-defaults in the first place.)
Change-Id: Iee7efb485187cbe8eba6a2d470afca4993eb1816
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/120693
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
However, restricting the workaround to GCC <= 11 then revealed that some old
versions of Clang apparently had a similar issue, causing "error: use of class
template 'OStringLiteral' requires template arguments; argument deduction not
allowed here", and thus also need the workaround. I saw the non-workaround code
fail with a build of Clang 6.0.0 and succeed with a build of Clang 7.0.0.
Change-Id: I6e4cf6c8c3a11618a578401574e5679e6b65d7f4
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/120657
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
Change-Id: I1c23fda56c013eeeaf4ad1099c164d6d1146f68b
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/119851
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|