Age | Commit message (Collapse) | Author | Files | Lines |
|
Fixes:
(build error) filerec.cxx:591: error: no match for 'operator>>'
Change-Id: I412cc9121c50830069e8e71c35dfb4f8ce475357
Reviewed-on: https://gerrit.libreoffice.org/8206
Tested-by: Michael Stahl <mstahl@redhat.com>
Reviewed-by: Michael Stahl <mstahl@redhat.com>
|
|
Change-Id: I8e11ffe888aac8887c4c0875c41de51f343debae
|
|
Change-Id: Ib03c97a52df120bac1ac9b2b9d2e52431ead1027
|
|
Change-Id: I939160ae72fecbe3d4a60ce755730bd4c38497fb
Reviewed-on: https://gerrit.libreoffice.org/8182
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Tested-by: Caolán McNamara <caolanm@redhat.com>
|
|
Change-Id: I9dc0525e04de5ae79205872b779dcd0115a9cc14
|
|
Change-Id: Ic31455a1f5ffffa35d4fdde901dd70734207b6f4
|
|
Change-Id: I01e72000f9e624b73351306e7d52c0ba18cbd8e1
|
|
Change-Id: Iace6e3f93f05342d7b1652e8118be01a142b82cc
|
|
8f8bc0dcf3bc253ae49159d52db049767f476ced "Move string hash function into String
class" had introduced a new getHash64 that, besides returning sal_uInt64 instead
of just sal_Int32, didn't do sampling of only a handful of characters, but
always computed the hash over all characters (as the usage in SfxItemSet and
SdPage appears to require for either performance or approximated correctness).
However, it would be advantageous to keep the stable URE interface as small as
possible. Now, O(1) sampling was apparently considered state of the art when
the rtl string classes were first created, closely copying java.lang.String,
which at that time demanded sampling for hashCode(), too---but never sampling
more than 15 characters, with the obvious (in hindsight, at least) performance
catastrophes, so they changed it to O(n) somewhere along the way.
Based on that, this commit changes the existing hash functions to not do
sampling any more, and removes the newly introduced -64 variants again. (Where
the extended value range of sal_uInt64 compared to sal_Int32 was hopefully not
vital to the existing uses.)
The old implementation used sampling only for strings of length >= 256, so I did
a "make check" build with an instrumented hash function that flagged all uses
with inputs of length >= 256, and grepped workdir/{Cppunit,Junit,Python}Test for
hits. Of the 2849 hits encountered, 2845 where in the range from 256 to 295
characters, and only the remaining four where of 2472 characters. Those four
were from CppunitTest_sc_subsequent_filters_test, importing long text into a
cell, causing ScDocumentImport::setStringCell to call
svl::SharedStringPool::intern, which internally uses an unordered_set. These
results appear to justify the change.
Change-Id: I78fcc3b0f07389bdf36a21701b95a1ff0a0d970f
|
|
Change-Id: I08d4de5fc4cbc56feda0f57f95ae76cd25b124e3
|
|
Change-Id: Iee327c3dd75bebb35d99de01eaa7103956e08974
|
|
Change-Id: I949bf3cb9c3b26a8c2de6bde20cef63d7630fc54
|
|
Change-Id: I91ab5f87f859b855c858a41afd218f57b03ad3a2
|
|
While copying slides to different slide decks,
styles were not being copied if there is already one
with the same name. This patch renames and copies those
to keep the formatting intact.
Change-Id: I66f71493f1fd658eed43e39aa7ae7ee7b5463b34
|
|
in favour of ReadXXX methods.
Change-Id: Ic2c0a7b6b92ff4c236ae99b39d77f3d935b301e3
Reviewed-on: https://gerrit.libreoffice.org/7915
Tested-by: Michael Stahl <mstahl@redhat.com>
Reviewed-by: Michael Stahl <mstahl@redhat.com>
|
|
Convert the template based read_lenPrefixed methods to regular
methods.
Change-Id: Ifd0e93aca055e55a0575e4377ec2b8e266dfb019
Reviewed-on: https://gerrit.libreoffice.org/7895
Reviewed-by: Michael Stahl <mstahl@redhat.com>
Tested-by: Michael Stahl <mstahl@redhat.com>
|
|
First, I updated the clang rewriter to do the conversion.
Then I lightly hand-tweaked the output for the few places where
the rewriter messed up, mostly when dealing with calls on "this".
Change-Id: I40a6a977959cd97415c678eafc8507de8aa3b1a9
Reviewed-on: https://gerrit.libreoffice.org/7879
Reviewed-by: Michael Stahl <mstahl@redhat.com>
Tested-by: Michael Stahl <mstahl@redhat.com>
|
|
Change-Id: Ie01738985311c915ca9f2d8dd47ca6cb96d1b26c
|
|
...and need not be virtual
Change-Id: I8cf38c4942526c6ca66595fdc3297be750ec09a0
|
|
as preparation for converting the SvStream::operator>> methods on
primitive types
Change-Id: I62f134bced15c687d6e0d46924f56e8d1c3d95b9
Reviewed-on: https://gerrit.libreoffice.org/7798
Tested-by: LibreOffice gerrit bot <gerrit@libreoffice.org>
Reviewed-by: Michael Stahl <mstahl@redhat.com>
|
|
Change-Id: I241661119371b75804fcf9215ff5e5da2a5b9265
Reviewed-on: https://gerrit.libreoffice.org/7732
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Tested-by: Caolán McNamara <caolanm@redhat.com>
|
|
Change-Id: I0dc09b7a6ee2849bd0c2ffc31be45f81cd2c15ee
|
|
Change-Id: I6cf511b92383f3cd60923620518b9233b82850c0
|
|
...to improve diagnosing misuses of boolean expressions in client code (cf.
compilerplugins/clang/implicitboolconversion.cxx). This change should be
transparent to client code.
Missing overloads of insert() for bool have been added to OStringBuffer and
OUStringBuffer (which required dropping one !VALID_CONVERSION check that would
now pick that overload, but would be flagged by
compilerplugins/clang/pointertobool.cxx).
Change-Id: I2d64cd923b8f47bfaa31e753def6515c29a3f8c9
|
|
.. to more explicit SvStream::Write* calls
This was done using another run of the clang rewriter, and then
a lot of hand tweaking to fix all the places where the rewriter
did not play nice with various macros.
Change-Id: I7bcab93851c8dfb59cde6bc76290c6484d88fb18
Reviewed-on: https://gerrit.libreoffice.org/7494
Reviewed-by: Michael Stahl <mstahl@redhat.com>
Tested-by: Michael Stahl <mstahl@redhat.com>
|
|
* Make inherited overloads visible via "using" in SfxAllItemSet.
* The overload with SfxItemSet argument:
** need not be virtual (verified by temporarily marking it SAL_FINAL);
** should apparently return bool.
Change-Id: I5c57ec3d757d3d32a3e23be12964e7ebb81e6211
|
|
Change-Id: I9869d9709f28b68ef7b518527175589d80644668
|
|
Change-Id: I5c72b0bc34d87312437ae32a506567c3fb3bfa19
|
|
Change-Id: I28697ffd7902321730435e15fcf3018c78a61c5f
|
|
Change-Id: Ibbc706d1c3cd36e21da2a15077392f9d75ba39fd
Reviewed-on: https://gerrit.libreoffice.org/7498
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Tested-by: Caolán McNamara <caolanm@redhat.com>
|
|
This is in preparation for more conversion of SvStream::operator<< calls
to use more explicit method names.
This converts the subclasses that have their own convenience overloads
of operator<< to use normal methods.
Change-Id: I5efd5d9a24c264cb86d2471303dd5849bf91ba80
|
|
...final season
Change-Id: Ie51ac231def4a8a6e2681b81de7580798c95eed2
|
|
Change-Id: I38f7ec288b907e889c71821cfbfac46a9688ba0c
|
|
Change-Id: Icb38319f1307e94ce5c6d43b999a08db1fc38d85
|
|
...and SfxEnumItemInterface::HasBoolValue, too.
Change-Id: Ia032e3d35a4c3b4c1efdc515ca36e466be03fc0a
|
|
This is the actual re-write.
Use a clang rewriter to rewrite SvStream::operator<< to methods
like WriteuInt32.
Note that the rewriter is not perfect, and I hand-tweaked the output.
In particular, I had to adjust places doing things like
(*this) << 1;
Change-Id: I5923eda3f4ebaa8b452b6ef109e726e116235a2a
Reviewed-on: https://gerrit.libreoffice.org/7342
Tested-by: LibreOffice gerrit bot <gerrit@libreoffice.org>
Reviewed-by: Michael Stahl <mstahl@redhat.com>
|
|
Fix typo in my commit 82625bb98e256b83351328d3bf2a14e3dd244eef
"remove unnecessary sal_Unicode casts in OUStringBuffer::append calls"
Change-Id: I593c6a8ce5be3d4e2783acd3800626d7eb9a0480
|
|
Convert code like:
buf.append( static_cast<sal_Unicode>('!') );
to:
buf.append( '!' );
Change-Id: Iacb03a61de65a895540940953b49620677b3d051
|
|
Change-Id: I10bb64672d02626814c162b09b8bdd615f7fcad8
|
|
Broadcast might result in calling Remove on the same object which erases
the entry from the listeners vector. If we create a copy we can still
iterate through the vector as all iterators are still valid.
|
|
Change-Id: Ic9809beead66cf0d0e6a6a28bb97b220fb667578
|
|
Change-Id: Idba9302e1ec5234d3d472cda047c09ba52afd328
|
|
Change-Id: I9bda35f2246de9d37077dda33c710b89ee008e5a
|
|
Listeners and broadcasters are M:N relationship. If you want to
destruct them, you easily end up in O(M*N) situation; where for every
listener, you iterate all broadcasters, to remove that one listener.
To avoid that, announce to the broadcasters that they are going to die, and the
listeners do not have to bother with removing themselves from the broadcaster.
The broadcaster will not broadcast anything after the PrepareForDesctruction()
call anyway.
Change-Id: I68d78b23e73bcbb944de9139448b2c20dfa14f62
|
|
Change-Id: Ia5f104bfd707bcf4e159c78ca2764c861fb0b6d9
|
|
Change-Id: I363e8c0f1a51a18bf0ad0ac4f931107137fd1c58
|
|
Change-Id: I56f38bd786f3a026cb2908f28540dc9c4003af83
|
|
Change-Id: Ib2690e3ec9987b97363687b61fe8ddae4ace9058
|
|
Convert code like
if( !aStr.isEmpty() && aStr[0] == 'x' )
to
if( aStr.startsWith("x") )
Change-Id: Iabc3a44ed3be2d29eed876e0eeef212ccd271edf
|
|
...in comphelper::PropertyMapEntry and SfxItemPropertyMapEntry. And as the
arrays of such need to be initialized dynamically anyway, also change their name
members to proper OUStrings while at it. Plus some const clean-up.
Change-Id: I67d4d7b5773fb020605f369daf39528bec930606
|