Age | Commit message (Collapse) | Author | Files | Lines |
|
...following up on 314f15bff08b76bf96acf99141776ef64d2f1355 "Extend
loplugin:external to warn about enums".
Cases where free functions were moved into an unnamed namespace along with a
class, to not break ADL, are in:
filter/source/svg/svgexport.cxx
sc/source/filter/excel/xelink.cxx
sc/source/filter/excel/xilink.cxx
svx/source/sdr/contact/viewobjectcontactofunocontrol.cxx
All other free functions mentioning moved classes appear to be harmless and not
give rise to (silent, even) ADL breakage. (One remaining TODO in
compilerplugins/clang/external.cxx is that derived classes are not covered by
computeAffectedTypes, even though they could also be affected by ADL-breakage---
but don't seem to be in any acutal case across the code base.)
For friend declarations using elaborate type specifiers, like
class C1 {};
class C2 { friend class C1; };
* If C2 (but not C1) is moved into an unnamed namespace, the friend declaration
must be changed to not use an elaborate type specifier (i.e., "friend C1;"; see
C++17 [namespace.memdef]/3: "If the name in a friend declaration is neither
qualified nor a template-id and the declaration is a function or an
elaborated-type-specifier, the lookup to determine whether the entity has been
previously declared shall not consider any scopes outside the innermost
enclosing namespace.")
* If C1 (but not C2) is moved into an unnamed namespace, the friend declaration
must be changed too, see <https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71882>
"elaborated-type-specifier friend not looked up in unnamed namespace".
Apart from that, to keep changes simple and mostly mechanical (which should help
avoid regressions), out-of-line definitions of class members have been left in
the enclosing (named) namespace. But explicit specializations of class
templates had to be moved into the unnamed namespace to appease
<https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92598> "explicit specialization of
template from unnamed namespace using unqualified-id in enclosing namespace".
Also, accompanying declarations (of e.g. typedefs or static variables) that
could arguably be moved into the unnamed namespace too have been left alone.
And in some cases, mention of affected types in blacklists in other loplugins
needed to be adapted.
And sc/qa/unit/mark_test.cxx uses a hack of including other .cxx, one of which
is sc/source/core/data/segmenttree.cxx where e.g. ScFlatUInt16SegmentsImpl is
not moved into an unnamed namespace (because it is declared in
sc/inc/segmenttree.hxx), but its base ScFlatSegmentsImpl is. GCC warns about
such combinations with enabled-by-default -Wsubobject-linkage, but "The compiler
doesn’t give this warning for types defined in the main .C file, as those are
unlikely to have multiple definitions."
(<https://gcc.gnu.org/onlinedocs/gcc-9.2.0/gcc/Warning-Options.html>) The
warned-about classes also don't have multiple definitions in the given test, so
disable the warning when including the .cxx.
Change-Id: Ib694094c0d8168be68f8fe90dfd0acbb66a3f1e4
Reviewed-on: https://gerrit.libreoffice.org/83239
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
The SwXText implementation for inserting text works like this:
* XTextPortionAppend methods appendTextPortion()/insertTextPortion() get
the text properties passed as a parameter, and they should apply only
those properties to the inserted text, not expand any existing
formatting hints at the insert position.
* XSimpleText method insertString() does expand existing formatting
at the insert position, just like editing in the UI does
For inserting XTextContent:
* XTextContentAppend methods
appendTextContent()/insertTextContentWithProperties()
with properties parameter, similar to XTextPortionAppend
* XTextContent::insertTextContent(), without properties
So arguably, by analogy to inserting text, the methods that take
properties should not expand hints, and the insertTextContent() should
follow the insertString and expand hints.
Commit 18cbb8fe699131a234355e1d00fa917fede6ac46 is an important bugfix
for writerfilter import, but the problem is, it added the
DontExpandFormat() call to insertTextContent(), whereas the regression
it was fixing (from commit 232ad2f2588beff50cb5c1f3b689c581ba317583) was
that the call was removed from insertTextContentWithProperties().
So restore the state before 232ad2f2588beff50cb5c1f3b689c581ba317583.
Turns out that SwUiWriterTest2::testTdf126206 was checking how a
bookmark-start is formatted instead of how the text is formatted.
Change-Id: If524409f88a1a36aa062b6e132996d3f9c1bb571
Reviewed-on: https://gerrit.libreoffice.org/83223
Tested-by: Jenkins
Reviewed-by: Michael Stahl <michael.stahl@cib.de>
|
|
Change-Id: I78eb67913a568c610e38e5002f914773c4906dfd
Reviewed-on: https://gerrit.libreoffice.org/79350
Tested-by: Jenkins
Reviewed-by: Arkadiy Illarionov <qarkai@gmail.com>
|
|
Change-Id: I588b7cc4b494e6569e7a7ba95e57e666d029b72b
Reviewed-on: https://gerrit.libreoffice.org/77324
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Tested-by: Caolán McNamara <caolanm@redhat.com>
|
|
Instead of Insert $1 -> Insert text box
Change-Id: I2131c3e7a88f005830fd755acc50fd71168fca10
Reviewed-on: https://gerrit.libreoffice.org/77173
Tested-by: Jenkins
Reviewed-by: László Németh <nemeth@numbertext.org>
Tested-by: László Németh <nemeth@numbertext.org>
|
|
Change-Id: I135d01abc52ab5e97b4b360763c8a7e3ddaf0d2d
Reviewed-on: https://gerrit.libreoffice.org/76639
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
Change-Id: Ib5de4377b22815ba718559ff6fcfd6ab5a0547a6
Reviewed-on: https://gerrit.libreoffice.org/75999
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Use range-based loops, STL and comphelper functions
Change-Id: I5bd910a86bd80c553cd4a0c044a8eb61084f77ae
Reviewed-on: https://gerrit.libreoffice.org/75167
Tested-by: Jenkins
Reviewed-by: Arkadiy Illarionov <qarkai@gmail.com>
|
|
Use braced initializer lists and std::transform.
Change-Id: I5d1a57d766e39663a55f4921f486210d41fa917d
Reviewed-on: https://gerrit.libreoffice.org/74588
Tested-by: Jenkins
Reviewed-by: Arkadiy Illarionov <qarkai@gmail.com>
|
|
Similar to clang-tidy readability-container-size-empty
Change-Id: If44f20a7aa678915e32d12101e1af71476f4b590
Reviewed-on: https://gerrit.libreoffice.org/71679
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: Iec5e93d9c59dde44571376e46fb98ea854e16b6c
Reviewed-on: https://gerrit.libreoffice.org/69784
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: Ia8b07edec54527fb4904536fabb03a18e8452550
Reviewed-on: https://gerrit.libreoffice.org/68659
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: I31cc9d6b962c116c64789d886b82ea476f4e5144
Reviewed-on: https://gerrit.libreoffice.org/66124
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: Ic307226591ff9702957ccdec486ccf70357eb6d9
Reviewed-on: https://gerrit.libreoffice.org/65951
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
getString() is passive method and no reason to throw
an exception instead of returning empty string in some
corner situations like object is being disposed.
As a compromise information about inbalid state is
reported into log.
Change-Id: Ied6ecb356ce341d44e5a2bb21fb8379257e38c31
Reviewed-on: https://gerrit.libreoffice.org/64442
Reviewed-by: Michael Stahl <Michael.Stahl@cib.de>
Tested-by: Jenkins
|
|
Change-Id: I0b3c407331bfa1fa0c5003250d327d4f26de3643
Reviewed-on: https://gerrit.libreoffice.org/63235
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
|
|
Do not move graphic nodes in SwXText::convertToTextFrame()
since it is not reasonable (they are anchored to something that
already moved) and hence it causes errors.
A static function checks wether the current node is a graphic.
A small change in writerfilter was done since a unit test failed:
The condition "m_nAnchorType != 0" was removed since it is not
reasonable at this place.
Change-Id: I8f27985f6f6c8329483370a7b8baaf9949513f1b
Reviewed-on: https://gerrit.libreoffice.org/60860
Tested-by: Jenkins
Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
|
|
Change-Id: I1eb6583bb9ec815bc0564b0d7c676f5b1fb9045f
Reviewed-on: https://gerrit.libreoffice.org/61177
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
rtl/string.hxx and rtl/ustring.hxx both unnecessarily #include <sal/log.hxx> (and don't make use of it themselves), but many other files happen to depend on it.
This is a continuation of commit 6ff2d84ade299cb3d14d4110e4cf1a4b8070c030 to be able to remove those unneeded includes.
This commit adds missing headers to every file found by:
grep -FwL sal/log.hxx $(git grep -Elw 'SAL_INFO|SAL_INFO_IF|SAL_WARN|SAL_WARN_IF|SAL_DETAIL_LOG_STREAM|SAL_WHERE|SAL_STREAM|SAL_DEBUG')
to directory sw
Change-Id: I1ede3f86e390bfec1a2d3ee8e8bb6ec67083b194
Reviewed-on: https://gerrit.libreoffice.org/58372
Tested-by: Jenkins
Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
|
|
(*) if we are already throwing a Wrapped*Exception, get the
exception using cppu::getCaughtexception.
(*) when catching and then immediately throwing UNO exceptions,
use cppu::getCaughtException to prevent exception slicing
(*) if we are going to catch an exception and then
immediately throw a RuntimeException, rather throw a
WrappedTargetRuntimeException and preserve the original exception information.
Change-Id: Ia7a501a50ae0e6f4d05186333c8517fdcb17d558
Reviewed-on: https://gerrit.libreoffice.org/54692
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
This is specifically for the benefit of DOCX import, but it
also makes sense in general. If a SwXCell is given char/para
properties, then apply those properties (without overwriting)
to the cell's contents.
This allows ANY paragraph or character properties that are applied
to a table style to become the "default" for the table.
This fixes a number of things:
-remove one-off hack to get PROP_PARA_LINE_SPACING to work.
-works for all character and paragraph properties (except those
shared with tables like borders).
-works in multi-paragraph cells. Previously those could return
AMBIGUOUS state, in which case the style wasn't applied at all.
Change-Id: Ia98c129879575c1aa8ca1fe2a64f4991c0a264e8
Reviewed-on: https://gerrit.libreoffice.org/54511
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Justin Luth <justin_luth@sil.org>
Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
|
|
Change-Id: Id6578d180fec3738be127993f02aaf45af915688
Reviewed-on: https://gerrit.libreoffice.org/54682
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Tested-by: Caolán McNamara <caolanm@redhat.com>
|
|
Change-Id: Icf0fa7ec07c8c52981c50bc03a34ae0fa9683fcf
Reviewed-on: https://gerrit.libreoffice.org/54184
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Björn Michaelsen <bjoern.michaelsen@libreoffice.org>
|
|
Reinstate a call to DontExpandFormat which was removed from
appendTextContent in commit 232ad2f2588beff50cb5c1f3b689c581ba317583
This ensures that direct character formatting which ended immediately
before the insertion point will not be expanded to cover the inserted
content.
Change-Id: Ie5fa6b5c5acee4f885f9e67535e98801af23661a
Reviewed-on: https://gerrit.libreoffice.org/50729
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
|
|
...which had been left out because "lots of our code uses this style, which I'm
loathe to bulk-fix as yet", but now in
<https://gerrit.libreoffice.org/#/c/45060/1/> "use std::unique_ptr" would have
caused an otherwise innocent-looking code change to trigger a
loplugin:unnecessaryparen warning for
pFormat = (pGrfObj)
? ...
(barring a change to ignoreAllImplicit in
compilerplugins/clang/unnecessaryparen.cxx similar to that in
<https://gerrit.libreoffice.org/#/c/45083/2> "Make not warning about !! in
loplugin:simplifybool consistent", which should also have caused the warning to
disappear for the modified code, IIUC).
Change-Id: I8bff0cc11bbb839ef06d07b8d9237f150804fec2
Reviewed-on: https://gerrit.libreoffice.org/45088
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
Previously shapes/frames were identified either by name or by SdrObject,
but in some cases name can be empty. New approach is to use names if they
exist and SdrObject reference if name is empty.
This is just a partial fix for mentioned TDF issue.
Change-Id: I3bd53f07fdb3fe69b2898d855eda48b6534cd75d
Reviewed-on: https://gerrit.libreoffice.org/43176
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
|
|
also make the plugin ignore the case where we have var decl's in the
clause we want to flatten, which could lead to problematic extension of
variable lifetime
Change-Id: I3061f7104e8c6a460bf74f5eac325a516ec50c59
Reviewed-on: https://gerrit.libreoffice.org/42889
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
- tracking the error state in a bool
- which gets pushed by reference to subfunctions
- and signals back error state from a bazzilion different location
- in a long operation that is not grouped into one undo
- and then haphazardly triggers an indiscriminate Undo
- and in addition throws an excpetion
More likely than not leaves the client with an undefined half-reverted
state, which an impossible situation to properly recover. This either
has to be done properly or not at all.
Change-Id: I677f87e78c32f4d93c8d21e9df7130a2595da891
Reviewed-on: https://gerrit.libreoffice.org/42510
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Björn Michaelsen <bjoern.michaelsen@libreoffice.org>
|
|
- extract constants from loop
- warn on index mismatch
Change-Id: I1e03dd65a82913c8a8de6abba56a82ed0f815db4
Reviewed-on: https://gerrit.libreoffice.org/42402
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Björn Michaelsen <bjoern.michaelsen@libreoffice.org>
|
|
Change-Id: Id58762bb4914cdbb358bfd8afb916647c964d38b
Reviewed-on: https://gerrit.libreoffice.org/42399
Tested-by: Björn Michaelsen <bjoern.michaelsen@libreoffice.org>
Reviewed-by: Björn Michaelsen <bjoern.michaelsen@libreoffice.org>
|
|
- also get rid of old OSL_* in favor of SAL_WARN*
Change-Id: I4292cb3292c37fe9905a40903d9094c6206ab7f6
Reviewed-on: https://gerrit.libreoffice.org/42374
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Björn Michaelsen <bjoern.michaelsen@libreoffice.org>
|
|
Change-Id: I92fd035824f247dc61edfb18c54b960a7733fdf7
Reviewed-on: https://gerrit.libreoffice.org/42244
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Translates leftovers found using a custom regex.
Additionally translated:
- One randomly found comment in /reportdesign
- Test strings in /stoc/test (let's see if it works)
Change-Id: I5f893c194c4b56b5365700928a3b8b63936d03e2
Reviewed-on: https://gerrit.libreoffice.org/41583
Reviewed-by: Michael Stahl <mstahl@redhat.com>
Tested-by: Michael Stahl <mstahl@redhat.com>
|
|
Change-Id: Iae7d86b857d0563d9ed9d9b4187e009554698412
|
|
Change-Id: I6c33709aa407ccb3eee7026ab9b40dc4257de209
Reviewed-on: https://gerrit.libreoffice.org/40769
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: I224e9995962901e8740bfaed06d57f7c0389236c
|
|
Change-Id: I6ffd9832ff1085c84fde8763045f3d1cb02137e2
Reviewed-on: https://gerrit.libreoffice.org/38974
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Michael Stahl <mstahl@redhat.com>
|
|
Change-Id: I3b50e45fdb99e9cd8bfda07356ee3ddb4dd0f8bb
Reviewed-on: https://gerrit.libreoffice.org/38905
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Jochen Nitschke <j.nitschke+logerrit@ok.de>
|
|
Change-Id: Ie5669bd75d9b4be047d98402cb69ac313ab618df
Reviewed-on: https://gerrit.libreoffice.org/38787
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
|
|
found by temporarily marking Reference as SAL_WARN_UNUSED.
Change-Id: I18809b62654467f890016adcc92576980ced393b
Reviewed-on: https://gerrit.libreoffice.org/37511
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: Ia264c192ac02a07bba67a66196899d13b19f83f0
Reviewed-on: https://gerrit.libreoffice.org/37386
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: I365d140446bd2a62cf8256acbfdd53fe72987380
|
|
Change-Id: I2018d669e4886040882c90012ad2b2c9f8a07331
|
|
Change-Id: I029ad67dfcbc40f3953adf485957efcbd97f23d0
Reviewed-on: https://gerrit.libreoffice.org/35328
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: I782fdd53641c0d7c629265b6179de70aa54382f9
Reviewed-on: https://gerrit.libreoffice.org/35246
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
and
coverity#1371215 Missing move assignment operator
Change-Id: Ib595dbab2525ac63d1e4174835876c08adba7a64
|
|
If the inserted string contains "\r", such as when importing
lp556169-2.rtf before the previous fix, the given cursor has one of its
positions mangled because its nNode will be on the new node, but the
nContent that is restored here is on the old node.
The invalid cursor causes an assert in the subsequent SetPropertyValues.
Change-Id: I73a2e6ecd02ccf75f7b9ffd89d90ae1e3a93ceb2
|
|
and drop unused CURSOR_INVALID constant
Change-Id: I190908a03317f93d247c0a9c806c70bb286b8ecb
Reviewed-on: https://gerrit.libreoffice.org/33964
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Tested-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
...and remove some unncessary using directives/declarations, in preparation of
removing now-unnecessary #includes from cppumaker-generated files, post
e57ca02849c3d87142ff5ff9099a212e72b8139c "Remove dynamic exception
specifications".
Change-Id: Iaf1f268871e2ee1d1c76cf90f03557527ebc9067
|
|
...(for now, from LIBO_INTERNAL_CODE only). See the mail thread starting at
<https://lists.freedesktop.org/archives/libreoffice/2017-January/076665.html>
"Dynamic Exception Specifications" for details.
Most changes have been done automatically by the rewriting loplugin:dynexcspec
(after enabling the rewriting mode, to be committed shortly). The way it only
removes exception specs from declarations if it also sees a definition, it
identified some dead declarations-w/o-definitions (that have been removed
manually) and some cases where a definition appeared in multiple include files
(which have also been cleaned up manually). There's also been cases of macro
paramters (that were used to abstract over exception specs) that have become
unused now (and been removed).
Furthermore, some code needed to be cleaned up manually
(avmedia/source/quicktime/ and connectivity/source/drivers/kab/), as I had no
configurations available that would actually build that code. Missing @throws
documentation has not been applied in such manual clean-up.
Change-Id: I3408691256c9b0c12bc5332de976743626e13960
Reviewed-on: https://gerrit.libreoffice.org/33574
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|