summaryrefslogtreecommitdiff
path: root/basic
AgeCommit message (Collapse)Author
2019-12-18sal_Char->char in avmedia..basicNoel Grandin
Change-Id: Ied1331d979539ef1183da64c55351b57d24f4a4f Reviewed-on: https://gerrit.libreoffice.org/85371 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-12-18Elide use of rtl_Instance (which is obsoleted by C++11 thread-safe statics),Stephan Bergmann
...redux, after 51e7a590976f664deb0a386d23b66bee38ea5687 "Elide use of rtl_Instance (which is obsoleted by C++11 thread-safe statics)" had done the same in parallel but forgot to remove some now-unnecessary parts Change-Id: I6c9d80c28b673ffb178d4f3cbd097b7d90891344 Reviewed-on: https://gerrit.libreoffice.org/85356 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2019-12-18Elide use of rtl_Instance (which is obsoleted by C++11 thread-safe statics)Noel Grandin
Change-Id: Ie3e099a6561c22646f07dab418f1a2f8123f1449 Reviewed-on: https://gerrit.libreoffice.org/85329 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-12-17No need to leak ImplRepositoryStephan Bergmann
...after 919689ac876eb051f01a09ef67e8140efaa3df32 "Remove unused preliminary entries from ImplRepository::m_aStore again" makes sure ImplRepository::m_aStore doesn't accumulate references to UNO objects, which would only have been destroyed upon exit, at which point that would easily have caused various issues. Change-Id: I6338a1ff46d72c137d619eabd8facca794028324 Reviewed-on: https://gerrit.libreoffice.org/85296 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2019-12-17Remove unused preliminary entries from ImplRepository::m_aStore againStephan Bergmann
The comment added to ImplRepository::getDocumentBasicManager by 8e74a57b6cf49cf5296ecc21a111d0119d7cac83 "mib19: #163556# preserve VBA compatibility in ODF roundtrip" explains why these preliminary entries are created, but apparently forgot to remove them again when ImplRepository::impl_createManagerForModel doesn't fill them. Change-Id: I49ac77a8ca408c0b17d7a7bf7e939a468882ca13 Reviewed-on: https://gerrit.libreoffice.org/85261 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2019-12-14VBA Enum statement TestCasesLibreOfficiant
Change-Id: Ib8f730d22bc7de00736c9fb1bb9c1af1784eb5df Reviewed-on: https://gerrit.libreoffice.org/85074 Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com> Tested-by: Mike Kaganski <mike.kaganski@collabora.com>
2019-12-13loplugin:expandablemethodsNoel Grandin
Change-Id: I333d91ea5ce78c82e9bb107f934614efc7bfb8f7 Reviewed-on: https://gerrit.libreoffice.org/85078 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-12-11Fix typoAndrea Gelmini
Change-Id: Ia35bd38c40ec65025ab4f43bea71745f15a548c8 Reviewed-on: https://gerrit.libreoffice.org/84915 Reviewed-by: Julien Nabet <serval2412@yahoo.fr> Tested-by: Julien Nabet <serval2412@yahoo.fr>
2019-12-09GetSource32 and GetSource are identicalMike Kaganski
Change-Id: Ia7c6687586b5a37b7556f1bae9ffd5b5b954db47 Reviewed-on: https://gerrit.libreoffice.org/84747 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2019-12-09SbxArray: drop 16-bit indicesMike Kaganski
Change-Id: I43b478187636b9bb53fdf7ab938436ae364bd7a7 Reviewed-on: https://gerrit.libreoffice.org/84733 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2019-12-09Preallocate array when initializing/preservingMike Kaganski
This avoids repeated std::vector::resize in SbxArray::GetRef32 called from SbxArray::Put32 called in loops for each array element when max index is known in advance. Change-Id: Ib2d1fe27820b9ede1426e206794f8cc729998841 Reviewed-on: https://gerrit.libreoffice.org/84722 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2019-12-08Fix typo in namefileAndrea Gelmini
Change-Id: I03dd69ae32b2d619300cdfac3581bebc142437be Reviewed-on: https://gerrit.libreoffice.org/84708 Tested-by: Jenkins Reviewed-by: Andras Timar <andras.timar@collabora.com>
2019-12-08Unify code that restores preserved arrayMike Kaganski
Change-Id: I5e8e8d3d7d185d3968c7ff40b86d046599ca44df Reviewed-on: https://gerrit.libreoffice.org/84709 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2019-12-08tdf#129256: don't create objects only to destroy when moving preserved arrayMike Kaganski
Restructure the StepDCREATE_IMPL code to do the preservation step before creating the objects for the rest of array. Change-Id: I4e4ba718af2da035b08397522e726eb131f813a4 Reviewed-on: https://gerrit.libreoffice.org/84706 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2019-12-07tdf#59327: two arguments with the same name is an errorMike Kaganski
Change-Id: I8d10487d6d6729de749a373feb0a8a349f2986e9 Reviewed-on: https://gerrit.libreoffice.org/84686 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2019-12-07tdf#59327: DIM should fail in procedures when same-name argument is presentMike Kaganski
Change-Id: I0a6828bd0b0c27018dc02c36ee207b8666f88ec0 Reviewed-on: https://gerrit.libreoffice.org/84682 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2019-12-06tdf#129227: this was always appending, not prependingMike Kaganski
Regression after 0761f97525b3f3ce2cd73f8db28bf389a3c44f57 The change replaced // From 1996-03-06: take the HandleLast-Flag into account sal_uInt16 nPos = r.m_Factories.size(); // Insert position if( !pFac->IsHandleLast() ) // Only if not self HandleLast { // Rank new factory in front of factories with HandleLast while (nPos > 0 && r.m_Factories[ nPos-1 ]->IsHandleLast()) nPos--; } r.m_Factories.insert(r.m_Factories.begin() + nPos, std::unique_ptr<SbxFactory>(pFac)); with r.m_Factories.insert(r.m_Factories.begin(), std::unique_ptr<SbxFactory>(pFac)); Before that commit condition in while was always false, so decrementing nPos had never happened, and insertion to the end was always performed. This change restores that. Change-Id: I778d6fdc93e9078a541a9b98c9432b5cf88d9791 Reviewed-on: https://gerrit.libreoffice.org/84609 Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com> Tested-by: Mike Kaganski <mike.kaganski@collabora.com>
2019-12-06tdf#129136 Call _wgetdcwd with "harmless" invalid parameter handlerStephan Bergmann
The documentation of _getdcwd/_wgetdcwd specifies: "If the specified drive isn't available, or the kind of drive (for example, removable, fixed, CD-ROM, RAM disk, or network drive) can't be determined, the invalid-parameter handler is invoked." (<https://docs.microsoft.com/en-us/cpp/c-runtime-library/reference/ getdcwd-wgetdcwd?view=vs-2017>) The default handler terminates the process, so temporarily install a "harmless" one. (e30f3bcd25762236eb739584dc71691123527c9f "Revert 'fdo#38913: Prevent invalid parameter handler crashes'" had removed a global "harmless" handler installed with _set_invalid_parameter_handler to handle JVM-related issues, but which was then considered no longer necessary. I assume that for those JVM-related issues there was no obvious place where to install a temporary _set_thread_local_invalid_parameter_handler, and that that was the reason for the global _set_invalid_parameter_handler in sal_detail_initialize. I cannot find any information that _set_thread_local_invalid_parameter_handler would be available in fewer versions of Windows than _set_invalid_parameter_handler, and might even be missing on Windows versions that we target.) (It appears that at least when building with MSVC 2019 and running on Windows 8, with an --enable-dbgutil build (presumably due to MSVC_USE_DEBUG_RUNTIME) a "Microsoft Visual C++ Runtime Library: Debug Assertion Failed!" error dialog still pops up, which needs to be quit with "Ignore" before our invalidParameterHandler is called.) Change-Id: I983d622eb03549873a63305f51bf0869d7fea33a Reviewed-on: https://gerrit.libreoffice.org/84597 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2019-12-04tdf#129107 objects in basic disappearNoel Grandin
Reverts part of "loplugin:useuniqueptr in SbModule" This reverts commit 263d7325691f4b0a1bda155f1c53bbcf712e9f09. because SbClassModuleObject is playing silly buggers with ownership by messing with fields in its SbModule superclass. Change-Id: I725332d080663e94b57f4bd4e1fb05aeeddf9038 Reviewed-on: https://gerrit.libreoffice.org/84352 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-12-03remove some useless comment linesNoel Grandin
which merely announce that the next declaration is a class Change-Id: Ifdb1398bcd99816b13e0b3769b46d0562bfbc1dc Reviewed-on: https://gerrit.libreoffice.org/84229 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-12-01Introduce o3tl::optional as an alias for std::optionalStephan Bergmann
...with a boost::optional fallback for Xcode < 10 (as std::optional is only available starting with Xcode 10 according to <https://en.cppreference.com/w/cpp/compiler_support>, and our baseline for iOS and macOS is still Xcode 9.3 according to README.md). And mechanically rewrite all code to use o3tl::optional instead of boost::optional. One immediate benefit is that disabling -Wmaybe-uninitialized for GCC as per fed7c3deb3f4ec81f78967c2d7f3c4554398cb9d "Slience bogus -Werror=maybe-uninitialized" should no longer be necessary (and whose check happened to no longer trigger for GCC 10 trunk, even though that compiler would still emit bogus -Wmaybe-uninitialized for uses of boost::optional under --enable-optimized, which made me ponder whether this switch from boost::optional to std::optional would be a useful thing to do; I keep that configure.ac check for now, though, and will only remove it in a follow up commit). Another longer-term benefit is that the code is now already in good shape for an eventual switch to std::optional (a switch we would have done anyway once we no longer need to support Xcode < 10). Only desktop/qa/desktop_lib/test_desktop_lib.cxx heavily uses boost::property_tree::ptree::get_child_optional returning boost::optional, so let it keep using boost::optional for now. After a number of preceding commits have paved the way for this change, this commit is completely mechanical, done with > git ls-files -z | grep -vz -e '^bin/find-unneeded-includes$' -e '^configure.ac$' -e '^desktop/qa/desktop_lib/test_desktop_lib.cxx$' -e '^dictionaries$' -e '^external/' -e '^helpcontent2$' -e '^include/IwyuFilter_include.yaml$' -e '^sc/IwyuFilter_sc.yaml$' -e '^solenv/gdb/boost/optional.py$' -e '^solenv/vs/LibreOffice.natvis$' -e '^translations$' -e '\.svg$' | xargs -0 sed -i -E -e 's|\<boost(/optional)?/optional\.hpp\>|o3tl/optional.hxx|g' -e 's/\<boost(\s*)::(\s*)(make_)?optional\>/o3tl\1::\2\3optional/g' -e 's/\<boost(\s*)::(\s*)none\>/o3tl\1::\2nullopt/g' (before committing include/o3tl/optional.hxx, and relying on some GNU features). It excludes some files where mention of boost::optional et al should apparently not be changed (and the sub-repo directory stubs). It turned out that all uses of boost::none across the code base were in combination with boost::optional, so had all to be rewritten as o3tl::nullopt. Change-Id: Ibfd9f4b3d5a8aee6e6eed310b988c4e5ffd8b11b Reviewed-on: https://gerrit.libreoffice.org/84128 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2019-11-28tdf#97983 - Added localization for numeric typesAndreas Heinisch
For numeric types, take into consideration different locales Change-Id: I815c195e7ef53a7b958f85932415a16c9a8a1e35 Reviewed-on: https://gerrit.libreoffice.org/83683 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2019-11-23Property Get/Let Basic StatementLibreOfficiant
My very first Basic TestCase: Assistance/mentoring is welcome Change-Id: I6399fdb603051792d698695fe659e5a12a0c8396 Reviewed-on: https://gerrit.libreoffice.org/83553 Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com> Tested-by: Jenkins
2019-11-22Extend loplugin:external to warn about classesStephan Bergmann
...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>
2019-11-20tdf#128434 free the BasicManager event listenerJan-Marek Glogowski
This gets rid of the last 72 lost bytes I could identify in the huge valgrind logs to look like its PDF generation related. Change-Id: Idda3c2c5b7f5ce0211199b86503037b74438ccf2 Reviewed-on: https://gerrit.libreoffice.org/83302 Tested-by: Jenkins Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
2019-11-17Extend loplugin:external to warn about enumsStephan Bergmann
To mitigate the dangers of silently breaking ADL when moving enums into unnamed namespaces (see the commit message of 206b5b2661be37efdff3c6aedb6f248c4636be79 "New loplugin:external"), note all functions that are affected. (The plan is to extend loplugin:external further to also warn about classes and class templates, and the code to identify affected functions already takes that into account, so some parts of that code are not actually relevant for enums.) But it appears that none of the functions that are actually affected by the changes in this commit relied on being found through ADL, so no adaptions were necessary for them. (clang::DeclContext::collectAllContexts is non-const, which recursively means that External's Visit... functions must take non-const Decl*. Which required compilerplugins/clang/sharedvisitor/analyzer.cxx to be generalized to support such Visit... functions with non-const Decl* parameters.) Change-Id: Ia215291402bf850d43defdab3cff4db5b270d1bd Reviewed-on: https://gerrit.libreoffice.org/83001 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2019-11-14cid#1448329 Wrapper object use after freeCaolán McNamara
Change-Id: I2c0352fee1621f03604409f9899cc1f9e8a6cbf8 Reviewed-on: https://gerrit.libreoffice.org/82717 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
2019-11-13fix windows builds after commit 7ddedd2594ddcaeed21f46709fdb44601ff641bflbenes
Change-Id: I2990da77a91f6c8fdb6fd9e4112d0451bc3342da Reviewed-on: https://gerrit.libreoffice.org/82547 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
2019-11-12tdf#42949 Fix IWYU warnings in basic/Gabor Kelemen
Found with bin/find-unneeded-includes Only removal proposals are dealt with here. Change-Id: I325149be2ea7697b5b4a2ce4a662edd2f8be6e50 Reviewed-on: https://gerrit.libreoffice.org/82312 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
2019-11-11cid#1448492 Wrapper object use after freeCaolán McNamara
Change-Id: I4c5978b019549d1509c4c70b4cfa93a362395fed Reviewed-on: https://gerrit.libreoffice.org/82448 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
2019-11-11call GetSbData just onceCaolán McNamara
Change-Id: Idb63c169c7e39f27bc99e3c3aa9155583f2a65ab Reviewed-on: https://gerrit.libreoffice.org/82431 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
2019-11-09tdf#80731: Only check closing parenthesis when in IDEMike Kaganski
This reinstates the fix by Pierre Lepage, which was reverted in 351dead74b4c213b13102f81b5ae9bb47ad8ca39, and makes sure it only has effect when the compilation is started from IDE. The idea is that the IDE is used primarily for development, and that's a good opportunity to detect any error in the code. When the code is compiled from outside of the IDE (like running an extension), the error is tolerated to allow users run the legacy code having this error. Hopefully this is enough for tdf#106529. This re-uses comphelper's NoEnableJavaInteractionContext class, which is converted into general-purpose SetFlagContext class to avoid code duplication. Change-Id: Ie290019cb190b8d1d590699ec13bd63eac478d09 Reviewed-on: https://gerrit.libreoffice.org/81616 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2019-11-06loplugin:indentation find broken if statementsNoel Grandin
so I don't read the "then" block as being a sequential statements Change-Id: Ib2004acd3518bd4ebd2246f02a26c2c0a8bbab4c Reviewed-on: https://gerrit.libreoffice.org/82069 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-11-05make some classes module-privateNoel Grandin
Change-Id: Ice9a57eedb166672dbdfae6da2a172ab77566a19 Reviewed-on: https://gerrit.libreoffice.org/81983 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-11-03find symbols that can be privateNoel Grandin
update the script and make private standalone functions Change-Id: Icb26ce258107700c90f89ad4e0d3329d075a2eb1 Reviewed-on: https://gerrit.libreoffice.org/81879 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-10-29remove unnecessary includesCaolán McNamara
Change-Id: Ia4a622b34ff3f71963cff7a1aa8658a4df12f04f Reviewed-on: https://gerrit.libreoffice.org/81676 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
2019-10-29Related: cid#1448329 call GetSbData() just onceCaolán McNamara
rather than every time its result it needed to deconvolute this a layer Change-Id: I1a611ed2bd74e682501cf8cbd64a5e285ec1c7e9 Reviewed-on: https://gerrit.libreoffice.org/81628 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
2019-10-26size some stringbuffer to prevent re-allocNoel Grandin
I started with 32 and kept doubling the size until the site did not need re-alloc, but clamped it at 512 (e.g. in emfio/). Change-Id: Ib7caf35a1b7e42b0e4ed8aa812493449e3eefc8f Reviewed-on: https://gerrit.libreoffice.org/81540 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-10-23loplugin:stringadd (clang-cl)Stephan Bergmann
Change-Id: I324496ff7c61d87a83b6b378810aa5c78cd7dba3 Reviewed-on: https://gerrit.libreoffice.org/81405 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2019-10-23In checkUnoObjectType, check for derived-from types tooStephan Bergmann
As discussed in the mail thread starting at <https://listarchives.libreoffice.org/global/users/msg54775.html> "[libreoffice-users] Experimental macro features: How to determine object types?", it is confusing if a variable dim'ed as com.sun.star.util.XSearchDescriptor cannot hold an object whose css.lang.XTypeProvider::getTypes only reports css.util.XReplaceDescriptor (which is derived from XSearchDescriptor) but not XSearchDescriptor itself. At least for now, keep the odd endsWithIgnoreAsciiCase check intact (instead of checking for strict equality). Change-Id: Idd8ae8cb11b0f2e9c6369842629fc5a21e1c5cc5 Reviewed-on: https://gerrit.libreoffice.org/81386 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2019-10-23Remove check that is redundantStephan Bergmann
...since 96710f8e466d44047ea4ac9cb8c70dc7664f5c73 "convert OUString::match to OUString::endsWith" Change-Id: Ifd08feede5908e6cc41b25bfe9f8bde6c6d6930b Reviewed-on: https://gerrit.libreoffice.org/81362 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2019-10-22Don't cast to check lower 16 bits; apply mask explicitlyMike Kaganski
This partly reverts f7a2795c881c2eba95aa09f21881f842281ae819 and removes useless casts that don't serve any purpose, to improve readability. Change-Id: Ia3559cb765a645ed81ba286e59d37005cee93bb1 Reviewed-on: https://gerrit.libreoffice.org/81275 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2019-10-22These should be sal_Int16Mike Kaganski
Change-Id: I18112d114c4632961b86da5539959c0d4abd79c7 Reviewed-on: https://gerrit.libreoffice.org/81276 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2019-10-22These should be sal_Int32Mike Kaganski
Change-Id: If00ef09bec9b66cd4b7725398b2cdb3f49a3fe90 Reviewed-on: https://gerrit.libreoffice.org/81274 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2019-10-21tdf#128263: update push positions in single line IFMike Kaganski
The positions (including current line) might have changed in Next(), even though it's "single line IF", due to line continuation char _. nP* members haven't been updated yet, so next call to Next() after Push() would restore wrong positions. I didn't store values of nLine/nCol1/nCol2 before if( IsEoln( Next() ) ), (doing which would allow to mimic Peek() behaviour), because I don't see how restoring their old values in the single line IF case would affect the logic. Possibly something to do later. Change-Id: I5a2a5c307ccbba77e9c02db50a04e33d71cd15a8 Reviewed-on: https://gerrit.libreoffice.org/81204 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2019-10-18make bin/update_pch.s always include code in trivial #if'sLuboš Luňák
E.g. #ifdef LIBO_INTERNAL_ONLY is always true for code that builds with our PCHs. Change-Id: I3cf311ea3621b909105754cfea2cb0116b8b67f5 Reviewed-on: https://gerrit.libreoffice.org/80961 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2019-10-15new loplugin:bufferaddNoel Grandin
look for OUStringBuffer append sequences that can be turned into creating an OUString with + operations Change-Id: Ica840dc096000307b4a105fb4d9ec7588a15ade6 Reviewed-on: https://gerrit.libreoffice.org/80809 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-10-11simplify "a = a +" to "a +="Noel Grandin
mostly so that my stringadd loplugin can point out places to improve Change-Id: I9920ee1c99cdb6b811ba67ff9d8e32aa261884b5 Reviewed-on: https://gerrit.libreoffice.org/80618 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-10-10convert WriteCharPtr..getStr to WriteOStringNoel Grandin
and improve the WriteOString method, we can avoid the strlen here, we already have the length One change in behaviour to be noted - if the string contains trailing zero bytes, which ARE INCLUDED IN THE STRING LENGTH, i.e. I'm not talking about the normal terminating zero, then this patch changes behaviour because we will now write those zeros to the stream. Change-Id: I4668b9b9eb877f820b1dc70d6cd10ba2623bc0a2 Reviewed-on: https://gerrit.libreoffice.org/80597 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-10-09tdf#114441 changed some sal_uLong to better fitting typesChristian Barth
Change-Id: I114a6b028eb59a1ae38c31bc20439a35643fe972 Reviewed-on: https://gerrit.libreoffice.org/80159 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.stahl@cib.de>