summaryrefslogtreecommitdiff
path: root/registry/source/reflwrit.cxx
AgeCommit message (Collapse)Author
2020-07-01Upcoming improved loplugin:staticanonymous -> redundantstatic: registryStephan Bergmann
Change-Id: Id96932c7944b5136f5fa7b5f698b8bb3b616e9ac Reviewed-on: https://gerrit.libreoffice.org/c/core/+/97633 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2020-03-12Revert "loplugin:constfields in package..registry"Noel Grandin
This reverts commit 31138ff7729cbf179079a5e635d3a823e2971f08. Now that we know that making fields has negative side effects like disabling assignment operator generation. Change-Id: I3f1ae65532f441c8be5ebca5866b8a1e1c69318c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/90363 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-12-19sal_Char->char in oox..registryNoel Grandin
Change-Id: Icc7f2a32696c30317c1ee77ef39d682d5f5a80b9 Reviewed-on: https://gerrit.libreoffice.org/85512 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-10-03tdf#127766: Avoid ODR violation for class/struct FieldEntryTor Lillqvist
We had a class FieldEntry in registry/source/reflwrit.cxx and a struct FieldEntry in sd/source/filter/eppt/text.hxx. That causes problems when code from both is linked into one binary, as in the iOS and Android apps. The wrong FieldEntry destructor got called from the code in sd which of course lead to a crash. Fix by putting the one in registry into an unnamed namespace. (I put a large chunk of the source file in it while at it.) Change-Id: I1b32075f7aba256129b36ceb38eba605c882b9ff Reviewed-on: https://gerrit.libreoffice.org/80141 Tested-by: Jenkins Reviewed-by: Tor Lillqvist <tml@collabora.com>
2019-07-23close some more holes in structuresNoel Grandin
and improve the pahole script so I can just run it once over the whole codebase Change-Id: I7e1775974a3a61f8c0e40646158f01163ace60cc Reviewed-on: https://gerrit.libreoffice.org/76122 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-03-08new loplugin constvarsNoel Grandin
detect static variables that can be made const. Thanks to mike kaganski for suggesting this. Here I introduce a new plugin feature - using markers in nearby comments to disable the plugin for specific vars. Some of this stuff was old debugging code. I removed the stuff that was older than 5 years. Change-Id: I6ec7742a7fdadf28fd128b592fcdf6da8257585c Reviewed-on: https://gerrit.libreoffice.org/68807 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-02-15tdf#42949 Fix IWYU warnings in registry/Gabor Kelemen
Found with bin/find-unneeded-includes Only removal proposals are dealt with here. Change-Id: I819bb44e36bdb6ec671cf11bd779085767d82fd0 Reviewed-on: https://gerrit.libreoffice.org/67697 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
2018-10-31loplugin:useuniqueptr in TypeWriter::createBlopNoel Grandin
Change-Id: Iafc9fdcaeb83d1a383ed60b3b610043d0325cde2 Reviewed-on: https://gerrit.libreoffice.org/62650 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-10-24remove more rtl::OUString and OString prefixesNoel Grandin
which seem to have snuck back in since the great rounds of removals. Change-Id: I85f7f5f4801c0b48dae8b50f51f83595b286d6a1 Reviewed-on: https://gerrit.libreoffice.org/62229 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-10-13loplugin:constfields in package..registryNoel Grandin
Change-Id: Ie139490f2b008bf294910d002af711f8f41fe76d Reviewed-on: https://gerrit.libreoffice.org/61727 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-10-09Extend loplugin:redundantinline to catch inline functions w/o external linkageStephan Bergmann
...where "inline" (in its meaning of "this function can be defined in multiple translation units") thus doesn't make much sense. (As discussed in compilerplugins/clang/redundantinline.cxx, exempt such "static inline" functions in include files for now.) All the rewriting has been done automatically by the plugin, except for one instance in sw/source/ui/frmdlg/column.cxx that used to involve an #if), plus some subsequent solenv/clang-format/reformat-formatted-files. Change-Id: Ib8b996b651aeafc03bbdc8890faa05ed50517224 Reviewed-on: https://gerrit.libreoffice.org/61573 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2018-09-05loplugin:useuniqueptr in TypeWriter::createBlopNoel Grandin
Change-Id: I33ce7786430d9a8c7cbc835fc5ca381fe5ab8b8f Reviewed-on: https://gerrit.libreoffice.org/59993 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-07-26Related: rhbz#1602589 silence error[memleak]: Memory leak: newValueCaolán McNamara
Change-Id: I2d04c75aa9b5e1d91e06992fdb99899657ecf96d Reviewed-on: https://gerrit.libreoffice.org/58062 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2018-01-15More loplugin:cstylecast: registryStephan Bergmann
Change-Id: I2c9436f5f9ea5ef3051d22310dee48ec39fad850
2018-01-15convert a<b?a:b to std::min(a,b)Noel Grandin
with something like git grep -nP '(.*)\s*<\s*(.*)\s*\?\s*\g1\s*:\s*\g2' -- *.?xx Change-Id: Id5078b35961847feb78a66204fdb7598ee63fd23 Note: we also convert a>b?b:a Reviewed-on: https://gerrit.libreoffice.org/47736 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-01-12More loplugin:cstylecast: registryStephan Bergmann
auto-rewrite with <https://gerrit.libreoffice.org/#/c/47798/> "Enable loplugin:cstylecast for some more cases" plus solenv/clang-format/reformat-formatted-files Change-Id: I496dc091b46b6a67afe52eb12c07824f65f71212
2017-11-02improve constparam lopluginNoel Grandin
lots of little fixes to make the logic less pessimistic Change-Id: If368822984250b11b98c56f5890177a1402e8660 Reviewed-on: https://gerrit.libreoffice.org/44168 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-10-31loplugin:constantparam in oox,registry,reportdesignNoel Grandin
Change-Id: I914fa6c6ef2f660eb6b8570c9c5f86cef477be80 Reviewed-on: https://gerrit.libreoffice.org/44093 Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk> Tested-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-10-23loplugin:includeform: registryStephan Bergmann
Change-Id: I499856ba451c71bb53e99d74c5a89f1a185c9386
2017-10-20loplugin:constmethod in codemaker,registry,storeNoel Grandin
Change-Id: Ie75875974f054ff79bd64b1c261e79e2b78eb7fc Reviewed-on: https://gerrit.libreoffice.org/43540 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-07-17loplugin:constparams in store,registryNoel Grandin
Change-Id: I5633203b372a9abd0138a396958c235ea8aaf66d Reviewed-on: https://gerrit.libreoffice.org/40039 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-07-14extend loplugin useuniqueptr to POD typesNoel Grandin
Change-Id: I6ff24f048bd8f75bf87a78b718f37b57855d4781 Reviewed-on: https://gerrit.libreoffice.org/39932 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-06-12clang-tidy readability-delete-null-pointerNoel Grandin
which in turn triggered some loplugin:useuniqueptr Change-Id: I0c38561fc9b68dac44e8cf58c8aa1f582196cc64 Reviewed-on: https://gerrit.libreoffice.org/38281 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-02-01loplugin:useuniqueptr extend to check local varsNoel Grandin
just the simple and obvious case for now, of a local var being allocated and deleted inside a single local block, and the delete happening at the end of the block Change-Id: I3a7a094da543debdcd2374737c2ecff91d644625 Reviewed-on: https://gerrit.libreoffice.org/33749 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-01-25loplugin: unnecessary destructor oox..saxNoel Grandin
Change-Id: Ie12bfabc92bce04d702f3e77aa5896366e49245e Reviewed-on: https://gerrit.libreoffice.org/33509 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2016-03-17loplugin:constantparam in registryNoel Grandin
Change-Id: Ic3c60325a722422912d06fe21d072c5f5c4bccb1 Reviewed-on: https://gerrit.libreoffice.org/23322 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
2016-02-09Remove excess newlinesChris Sherlock
A ridiculously fast way of doing this is: for i in $(pcregrep -l -M -r --include='.*[hc]xx$' \ --exclude-dir=workdir --exclude-dir=instdir '^ {3,}' .) do perl -0777 -i -pe 's/^ {3,}/ /gm' $i done Change-Id: Iebb93eccbee9e4fc5c4380474ba595858a27ac2c Reviewed-on: https://gerrit.libreoffice.org/22224 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Chris Sherlock <chris.sherlock79@gmail.com>
2015-11-10loplugin:nullptr (automatic rewrite)Stephan Bergmann
Change-Id: Ie5a37a49f1b1c08a20f89e167ca415fc645ed40d
2015-10-07Abstract out repeated code into a lambdaStephan Bergmann
...to silence a clang-analyzer-deadcode.DeadStores on the last update of pBuffer Change-Id: I144b64c330c178f78109fefadacf62fca3765694
2015-08-20new loplugin automemNoel Grandin
find places where we should be using std::unique_ptr Change-Id: I5b9defe778fdc4738ecea381215396874db59e66
2015-07-03Make RegistryTypeWriter non-copyableStephan Bergmann
(and note the operator == vs. = typo) Change-Id: I9c25149967ed9b80f5e8f014de0dfee2e8f485d8
2015-07-03Remove RegistryTypeWriter_Api indirectionStephan Bergmann
Change-Id: I313adfb72272a631299efb3d2464873853a126be
2015-07-03Remove unused functionsStephan Bergmann
Change-Id: Ic4058c133a676646bc0c5d1e52207471bb78a1cb
2015-07-03Move module-private includes from include/registry/ to registry/Stephan Bergmann
Change-Id: I72bdd6627a191a65d5c3b479c100e30442a8bb9e
2015-06-15remove unnecessary check for null when calling deleteNoel Grandin
Idea originally from caolan. Found using the following command: find . -name *.cxx | xargs /opt/local/bin/grep -zlP '(?m)if\s*\(\s*\w+\s*\)\s*delete\s+\w+\;' Change-Id: I3338f4e22193a6dfd6219c8c75835224a3392763
2015-04-15remove unnecessary use of void in function declarationsNoel Grandin
ie. void f(void); becomes void f(); I used the following command to make the changes: git grep -lP '\(\s*void\s*\)' -- *.cxx \ | xargs perl -pi -w -e 's/(\w+)\s*\(\s*void\s*\)/$1\(\)/g;' and ran it for both .cxx and .hxx files. Change-Id: I314a1b56e9c14d10726e32841736b0ad5eef8ddd
2015-04-09convert RTReferenceType to scoped enumNoel Grandin
Change-Id: I8320f6f42d5579fbd09450ddca61c4c066de98e4
2015-04-09convert RTMethodMode to scoped enumNoel Grandin
Change-Id: I81599570698eb92abf14fa6386d8545c2031e863
2015-04-09convert RT_ACCESS fields to scoped enumNoel Grandin
Change-Id: Ifef0aaae6208f18c1352fef7c471deb60a97820d
2015-03-28Clean up C-style casts from pointers to voidStephan Bergmann
Change-Id: I192bc9653d8492a850a5e259e15782bd3bb24922
2015-03-26const_cast: convert some C-style casts and remove some redundant onesStephan Bergmann
Change-Id: I32d7a1d4fed6ef5c56f485cd92464f2d0960e5fd
2015-01-05Some loplugin:revisibility clean-upStephan Bergmann
Stumbled across such redundant visibility re-specifications when looking at the odd case of cppu_unsatisfied_iquery_msg declared CPPU_DLLPUBLIC in cppu/source/cppu/cppu_opt.cxx and used in inline code in include/com/sun/star/uno/Reference.hxx with only a declaration lacking CPPU_DLLPUBLIC visible, and wondering how that actually works on Windows. However, this plugin is probably not worth it being run all the time, so committing it to compilerplugins/clang/store/. Change-Id: Ibc3c4e7499213de1b419ce7eb85455cb832e1510
2014-05-23coverity#707966 Uninitialized pointer fieldCaolán McNamara
Change-Id: I0484afe60697f8b414591eb0efc5284439a7052f
2014-05-10coverity#707966 Uninitialized pointer fieldCaolán McNamara
Change-Id: I9aa3bbae431c5fb3f1713a7c48350e82c6618927
2014-03-19coverity#707966 Uninitialized pointer fieldCaolán McNamara
Change-Id: Id82e970423dd044c597271b2fa9459cabddd7e26
2013-04-07mass removal of rtl:: prefixes for O(U)String*Luboš Luňák
Modules sal, salhelper, cppu, cppuhelper, codemaker (selectively) and odk have kept them, in order not to break external API (the automatic using declaration is LO-internal). Change-Id: I588fc9e0c45b914f824f91c0376980621d730f09
2013-03-27-Wunused-macrosStephan Bergmann
Change-Id: Ifaa1637122d6f9cae1e29b77ac36ca5d1f220aed
2012-09-14remove use of SAL_MIN() macroNorbert Thiebaud
Change-Id: Ia91118388240c9a54d010b94aef34ad528ce5761
2012-08-04Replace usage of rtl/memory.h in registry with equivalent from string.hArnaud Versini
Change-Id: I3c442b7c3743684f62cc5ffc3c4b0926ff0db999
2012-07-03re-base on ALv2 code.Michael Meeks