Commit Graph
257 Commits
Author SHA1 Message Date
Noel Grandin 35ba29e093 loplugin:useuniqueptr in SpellChecker
Change-Id: I36a9fe01e228f3f2f5e441c369291da4c461f735
Reviewed-on: https://gerrit.libreoffice.org/49874
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-02-17 07:06:49 +01:00
Jan Holesovsky 3a68b21c21 lok: Allow whitelisting languages that should be used by LibreOfficeKit.
LOK may get way too many languages if there are dictionaries for them
installed which blows the pre-init to >2G easily; let's allow limiting that.

Also make the preloading of languages work with the internal spell checking
dictionaries and thesauri.

Change-Id: I77119970030a7386a5cccbe4fdc89b15eab56ef1
Reviewed-on: https://gerrit.libreoffice.org/48720
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Michael Meeks <michael.meeks@collabora.com>
2018-01-27 11:04:32 +01:00
Stephan Bergmann fc528a4680 More loplugin:cstylecast on macOS
Automatic rewrite (of loplugin:cstylecast and loplugin:unnecessaryparen) after
cab0427cad "Enable loplugin:cstylecast for some
more cases" and a409d32e7f "More
loplugin:cstylecast"

Change-Id: Iff4877e8a42804c952c48c13332caf0a83c92870
Reviewed-on: https://gerrit.libreoffice.org/48216
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2018-01-20 10:45:48 +01:00
abstatic 4edc58af36 tdf#112373 Using vector of struct to manage hunspell dicts
Currently we use arrays allocated on heap for initializing
available locales and dictionaries.

This patch encapsulates all the different objects
related to a dictionary into a strcut dictItem.

unique_ptr is used for hunspell, also uses o3tl::make_unique for creating them.
Used 'reserve' for better memory allocation of vector.
Removed unused member and local variables.

Change-Id: I6309c681790cfec4ee9b11119937063bc414cf1f
Reviewed-on: https://gerrit.libreoffice.org/48109
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2018-01-20 07:26:55 +01:00
Stephan Bergmann f97125829c loplugin:salcall (macOS)
Change-Id: I297ac09358ce948acae9b73e8ed605964520c73b
Reviewed-on: https://gerrit.libreoffice.org/46437
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2017-12-15 08:48:12 +01:00
Noel Grandin 3af500580b loplugin:salcall fix functions
since cdecl is the default calling convention on Windows for
such functions, the annotation is redundant.

Change-Id: I1a85fa27e5ac65ce0e04a19bde74c90800ffaa2d
Reviewed-on: https://gerrit.libreoffice.org/46164
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-12-11 12:13:46 +01:00
Julien Nabet a14892eda2 Replace lists by vectors in lingucomponent
+ use loop ranges

Change-Id: I0ae81e3c10a6382d3f5719b2824a70d6e72b1462
Reviewed-on: https://gerrit.libreoffice.org/44169
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
2017-11-01 20:37:54 +01:00
Caolán McNamara 57f649dc9a Related: tdf#80713 allow translation of linguistic service display names
Change-Id: I23309dde1520e20e66d72fe9780454632d5f75b6
Reviewed-on: https://gerrit.libreoffice.org/43718
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Tested-by: Caolán McNamara <caolanm@redhat.com>
2017-10-25 11:09:16 +02:00
Stephan Bergmann ed8cdc0946 loplugin:includeform: lingucomponent (macOS)
Change-Id: I24d4a68ec7608f6f116337250893d96cdd68b938
2017-10-24 11:54:56 +02:00
Stephan Bergmann c8ea69a2fb loplugin:includeform: lingucomponent
Change-Id: I41c38e8dd7b3a782af3f2f5d9f298bca8b633f7a
2017-10-23 22:46:02 +02:00
Noel Grandin 5cff38911c strip out trivial indirection
Change-Id: If025c6ed77faa52383609367169611c2a3e89360
Reviewed-on: https://gerrit.libreoffice.org/43473
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-10-18 10:53:02 +02:00
Julien Nabet cfce9b4180 Fix potential leak in macspellimp.mm
+ avoid macSpell var
I'm not sure to retrieve [NSSpellChecker sharedSpellChecker] in a pointer
is a good idea.
Most of the examples using sharedSpellChecker just call [NSSpellChecker sharedSpellChecker]
each time. If there's a bit more code, at least we're sure we won't leak because of this.

Change-Id: I9818bd3d51f26b50849e1a5e69cc705acd92ad29
Reviewed-on: https://gerrit.libreoffice.org/43140
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
2017-10-05 06:38:00 +02:00
Julien Nabet 11fcdecb63 Related tdf#112425: fix another leak in MacSpellChecker
Apply the same changes in GetProposals than GetSpellFailure

Change-Id: Id78966568833f29c21f44724974254218636597d
Reviewed-on: https://gerrit.libreoffice.org/42397
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
2017-09-18 00:11:42 +02:00
Julien Nabet 83288332f7 tdf#112425: fix leak in MacSpellChecker
by using "autorelease" keyword with init vars

Change-Id: I056282460b94f8052287f5ad29d26a4870cd06a5
Reviewed-on: https://gerrit.libreoffice.org/42361
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
Tested-by: Julien Nabet <serval2412@yahoo.fr>
2017-09-16 22:54:56 +02:00
Noel Grandin db3860062e extend loplugin useuniqueptr to OUString pointers
Change-Id: Ieb5bab3895e1edaff497c4a1a88303ccac097edc
Reviewed-on: https://gerrit.libreoffice.org/39948
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-07-17 07:23:22 +02:00
Noel Grandin 0088f365b1 loplugin:useuniqueptr in lingucomponent
Change-Id: I5d668718620114cb8b9d53375497a4d0b1759abb
Reviewed-on: https://gerrit.libreoffice.org/39852
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-07-12 15:52:28 +02:00
Stephan Bergmann d6db18316b loplugin:oncevar
Change-Id: I285296913f469aa624ececefab488ff4c456f05a
2017-06-30 09:55:00 +02:00
Jochen Nitschke 2e0444d316 cleanup unused css/linguistic2/ includes
Change-Id: Ifd4b495f965f948d37557d83a03a38df9322039a
Reviewed-on: https://gerrit.libreoffice.org/38109
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-05-28 17:27:45 +02:00
Noel Grandin 6df22f0ec5 loplugin:checkunusedparams various
Change-Id: I5d1cc807134230d86e0226a12fada204004312d3
Reviewed-on: https://gerrit.libreoffice.org/37675
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-05-16 14:20:27 +02:00
Andrea Gelmini a940826162 Fix typos
To complete commit 0ef94e2b55
and f12096272e

Change-Id: Ie86bbfbd58dd728a013bef221e4d5c8fbcaf8e03
Reviewed-on: https://gerrit.libreoffice.org/37199
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
2017-05-05 23:35:06 +02:00
Stephan Bergmann 6d4a0474b3 loplugin:salunicodeliteral: lingucomponent
Change-Id: I130ca7e2d98626f0d187eb69e6ea4b0554f1bd00
2017-04-28 18:26:58 +02:00
Noel Grandin c70d49c7c8 use strong_int for LanguageType
Change-Id: If99a944f7032180355da291ad283b4cfcea4f448
Reviewed-on: https://gerrit.libreoffice.org/36629
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-04-26 08:50:54 +02:00
Khaled Hosny 2d028dfe84 Prefix members
Change-Id: I342ac49877c928c52eb3001f5a7bab07588636fa
Reviewed-on: https://gerrit.libreoffice.org/34463
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Khaled Hosny <khaledhosny@eglug.org>
2017-02-20 14:36:01 +00:00
Stephan Bergmann e57ca02849 Remove dynamic exception specifications
...(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>
2017-01-26 12:54:43 +00:00
Stephan Bergmann 2d26f7fb7f loplugin:dynexcspec (macOS), lingucomponent
Change-Id: I11f7419babd1ceb158ab0a329dd3d8699b7b2702
2017-01-20 13:00:07 +01:00
Stephan Bergmann 6e3cbd285e New loplugin:dynexcspec: Add @throws documentation, lingucomponent
Change-Id: Iebd0a98c86803342ee54f30c848e7194a752335f
2017-01-19 18:03:18 +01:00
Caolán McNamara 484370526d fix collision
Change-Id: I73371e19877a8b192b188c1c6367ba0d391530df
2016-12-15 09:45:33 +00:00
David Tardon 043c1886d5 hunspell defines this for some time now
Change-Id: I5cd3cd11f24bee87266822ec13e64132ee470d6a
2016-12-15 10:40:14 +01:00
David Tardon 64362ec119 fix build with hunspell < 1.5
Change-Id: I66810d2bf9bbd08990dd8e995e34c50caa472ff8
2016-12-15 10:40:14 +01:00
Caolán McNamara 7f9a389b45 if building against system hunspell < 1.5.4 > 1.4.0
Change-Id: I9ba1b9c3c0e3efb00538b2f3ed4fcffc29f9e931
2016-12-15 09:25:35 +00:00
Caolán McNamara d423121dba update to latest hunspell 1-5 release
Change-Id: Ifb412506f2e36878d44d0e4f6360ae8d070ffa15
Reviewed-on: https://gerrit.libreoffice.org/28488
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Tested-by: Caolán McNamara <caolanm@redhat.com>
2016-12-14 20:18:07 +00:00
Noel Grandin d6f2dd831a remove useless Mutex guards
Change-Id: Ib1edb681b47ce98e2e810d15111932002786aa51
Reviewed-on: https://gerrit.libreoffice.org/31875
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Tested-by: Noel Grandin <noel.grandin@collabora.co.uk>
2016-12-12 09:16:09 +00:00
Caolán McNamara dd691312a3 we shouldn't need explicit lt_rtl_OUString, etc things anymore
Change-Id: Ibeec3fcc353e07e61fb2c838b318e0a04081ce2c
2016-09-24 12:15:13 +01:00
Stephan Bergmann 0f6cb25be8 loplugin:override
Change-Id: If6d03fd0d3b5b69f3b07e697c4f6d7a3668ee69a
2016-09-14 14:48:18 +02:00
Stephan Bergmann 91dd2db17b loplugin:override: No more need for the "MSVC dtor override" workaround
The issue of 362d4f0cd4 "Explicitly mark
overriding destructors as 'virtual'" appears to no longer be a problem with
MSVC 2013.

(The little change in the rewriting code of compilerplugins/clang/override.cxx
was necessary to prevent an endless loop when adding "override" to

  OOO_DLLPUBLIC_CHARTTOOLS    virtual ~CloseableLifeTimeManager();

in chart2/source/inc/LifeTime.hxx, getting stuck in the leading
OOO_DLLPUBLIC_CHARTTOOLS macro.  Can't remember what that
isAtEndOfImmediateMacroExpansion thing was originally necessary for, anyway.)

Change-Id: I534c634504d7216b9bb632c2775c04eaf27e927e
2016-09-13 13:19:22 +02:00
Caolán McNamara 7423629f0a cppcheck: oppositeInnerCondition if new fails, its going to throw
not return nullptr

Change-Id: I8f46e49b28fd9547fb3e32dca0c6b99ee2cd5c7d
2016-06-20 12:34:58 +01:00
Stephan Bergmann 29840e6769 loplugin:salbool
Change-Id: I186376ceeb53126bc31d63d00a988be6cb7a5637
2016-04-22 09:31:15 +02:00
Noel Grandin 5abc669599 new plugin stylepolice
check for local variables which follow our member field naming
convention, which is highly confusing

Change-Id: Idacedf7145d09843e96a584237b385f7662eea10
2016-04-21 08:32:47 +02:00
Stephan Bergmann 0f1e032431 loplugin:salbool: Automatic rewrite of sal_False/True
Change-Id: Ia4afa4cc65215053ac44cc0b48e528064837c49e
2016-04-20 17:25:44 +02:00
Caolán McNamara 072b32442e try next hunspell 1.4.0 prerelease milestone
try using reverse iterators here then

and remove dictmgr which we don't seem to use or need

Change-Id: I981fccc4ca7562d5ab707dc2f605e409169dec07
2016-04-18 09:32:39 +01:00
Noel Grandin 789055bc2a clang-tidy performance-unnecessary-copy-initialization
probably not much performance benefit, but it sure is good at
identifying leftover intermediate variables from previous
refactorings.

Change-Id: I3ce16fe496ac2733c1cb0a35f74c0fc9193cc657
Reviewed-on: https://gerrit.libreoffice.org/24026
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
Tested-by: Noel Grandin <noelgrandin@gmail.com>
2016-04-18 07:37:31 +00:00
Jochen Nitschke 150ac9cf05 clean-up: unused using declarations and includes
Searched source for using declarations.
Checked if those symbols reappear in the source file,
even in comments or dead code but not in #include statements.
If they don't reappear, remove the declaration.
Remove includes whose symbol got removed.

Change-Id: Ibb77163f63c1120070e9518e3dc0a78c6c59fab0
Reviewed-on: https://gerrit.libreoffice.org/24148
Reviewed-by: Jochen Nitschke <j.nitschke+logerrit@ok.de>
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
Tested-by: Noel Grandin <noelgrandin@gmail.com>
2016-04-18 07:25:24 +00:00
Noel Grandin 2087484c65 use consistent #define checks for the Windows platform
stage 2 of replacing usage of various checks for the windows platform
with the compiler-defined '_WIN32' macro

In this stage we focus on replacing usage of the WIN macro

Change-Id: Ie8a4a63198a6de96bd158ecd707dadafb9c8ea84
Reviewed-on: https://gerrit.libreoffice.org/22393
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
2016-02-17 11:33:57 +00:00
Stephan Bergmann 3c51c3db18 Attempted fix for "Resolves: #i126762# Ignore dictionary not in specified...
...location."  Caused many crashed during "make check", when aLocaleNames is a
sequence of 17 ("ar-SA", "ar-DZ", ...), but aLcoations merely a sequence of 2
(".../dict-ar/ar.aff", ".../dict-ar/ar.dic").

From comments further down below, it looks like aLocations will always contain
exactly two entries ("also both files have to be in the same directory and the
file names must only differ in the extension (.aff/.dic)"), and that all the
aLocaleNames members share the same set of aLocations ("Thus here we work-around
this by adding the same dictionary several times. Once for each of its supported
locales"), so that it would appear to be OK to just check once for the existenceof aLocations[0].

(There is a check for

    if (aDictIt->aLocaleNames.getLength() > 0 &&
        aDictIt->aLocations.getLength() > 0)

below, so it might be that these can be empty, or it might just be "defensive
programming."  Play it safe, and check here that aLocations is not empty.)

Change-Id: I82bea6571983e397a9e164b294a5ba656b511a67
2016-02-02 12:40:06 +01:00
Kay Schenk 6691d78f1d Resolves: #i126762# Ignore dictionary not in specified location.
Damaged "registrymodifications.xcu" causing problems with backups and spell checker

(cherry picked from commit 983e71fa37e12fbae29eddc2b855ddaf6280cc0e)

Change-Id: I279275e11fb2ee6a223c7905652165d1b7a2e0ac
2016-02-02 09:35:29 +00:00
Noel Grandin 752cd07d08 InterfaceContainer2 with vector instead of Sequence
create an InterfaceContainer2 class to replace InterfaceContainer.
It uses a std::vector instead of a Sequence for the mutable listener
list, which provides far better performance.

Switch all our internal use-sites to the new class.

Change-Id: I6b56cfa511ded2395faa22e68fab3b2f16c3cb88
2016-01-25 08:52:03 +02:00
Andrea Gelmini 64d624b651 Fix typos
Change-Id: I9a5940027423ff0791fa7da0b79b617412ce6b86
Reviewed-on: https://gerrit.libreoffice.org/21209
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Ashod Nakashian <ashnakash@gmail.com>
2016-01-10 14:17:20 +00:00
Stephan Bergmann 8f7e5633b1 Don't assume sal_Unicode is unsigned short
Change-Id: Ia93c541ea21be89578789d58f642109184a18685
2015-11-17 10:39:42 +01:00
Noel Grandin 21a9bc8716 no need to take a mutex when only dealing with stack-local data
Change-Id: Ie45e626aad55a8174a53b769a98601bf54dedf65
Reviewed-on: https://gerrit.libreoffice.org/19979
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
2015-11-16 11:37:11 +00:00
Noel Grandin 8569c6d0ad use initialiser list for Sequence<OUString>
Change-Id: Ia5e47261d1fc6fac2d046656c05a1c5eedb07e02
Reviewed-on: https://gerrit.libreoffice.org/19978
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
2015-11-16 08:35:42 +00:00