summaryrefslogtreecommitdiff
path: root/comphelper
AgeCommit message (Collapse)Author
2018-09-20generateGUIDString: Fix incorrect string lengthSamuel Mehrbrodt
This bug caused signature line IDs in OOXML to be written with an appended "_x0000_". Change-Id: If219279a5d5177ec5fac2d9dd747dc015c16b6bc Reviewed-on: https://gerrit.libreoffice.org/60736 Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk> Tested-by: Jenkins Reviewed-by: Samuel Mehrbrodt <Samuel.Mehrbrodt@cib.de> (cherry picked from commit 8c7e64cd3854a912ef33b5a717a9f36856925c7c) Reviewed-on: https://gerrit.libreoffice.org/60766 Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
2018-07-26Allow the comphelper threadpool to be reset after construction.Michael Meeks
Otherwise some pre-init components can start it, and threads get stranded in the forkit process causing grief. Change-Id: Ib1846f8b329b4c6b84645999dafba1252c5129c7 Reviewed-on: https://gerrit.libreoffice.org/57635 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
2018-07-06tdf#117901 Write signature line images as emf to ooxmlSamuel Mehrbrodt
Change-Id: Idbf60be3cef2d9dde454da0279d2810488b1e157 Reviewed-on: https://gerrit.libreoffice.org/56871 Tested-by: Jenkins Reviewed-by: Samuel Mehrbrodt <Samuel.Mehrbrodt@cib.de> (cherry picked from commit 7bafb7ca8ef9467f5c55766d2a38ba0d0a60837c) Reviewed-on: https://gerrit.libreoffice.org/56986 Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
2018-05-22loplugin:unusedfields in avmedia..comphelperNoel Grandin
Change-Id: I74f125103b67c506d9bb67537e4c4cd3f8f871da Reviewed-on: https://gerrit.libreoffice.org/54641 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-05-18Refactor SfxObjectShell sign methodsSamuel Mehrbrodt
for signature line signing Change-Id: Iac4f3a248af53bdbf159e6e8d656e1dcbc3aacbf Reviewed-on: https://gerrit.libreoffice.org/54473 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Samuel Mehrbrodt <Samuel.Mehrbrodt@cib.de>
2018-04-25turn off randomness when running under valgrindNoel Grandin
Change-Id: Ic9853c967cdc36b1bf919a4914b04bf6752f0834 Reviewed-on: https://gerrit.libreoffice.org/53374 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-04-15cppcheck: variableScopeMuhammet Kara
Change-Id: Ia149b2b3f6f445e48cd469bb48a80f12b44648cd Reviewed-on: https://gerrit.libreoffice.org/52903 Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk> Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Muhammet Kara <muhammet.kara@pardus.org.tr>
2018-04-15remove some unused comphelper includesJochen Nitschke
and fix the fallout Change-Id: I5d0c2040f57a3ac354a7e277592da31d09a5f359 Reviewed-on: https://gerrit.libreoffice.org/52894 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Jochen Nitschke <j.nitschke+logerrit@ok.de>
2018-04-10loplugin:unusedmethodsNoel Grandin
Change-Id: I6f976ba8f792d2cee34859e9258798351eed8b1d Reviewed-on: https://gerrit.libreoffice.org/52636 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-04-07comphelper: use a lambda expression in NamedValueCollection::operator >>=()Chris Sherlock
Change-Id: Idf47f500be097c4af907c37f6ca8632cd91f3ba2 Reviewed-on: https://gerrit.libreoffice.org/52548 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-04-07sw lok: View jumps to cursor position even if it is moved by an other view.Tamás Zolnai
Scrolling is done twice. Once in SwCursorShell::UpdateCursor() by SCROLLWIN flag. Here we can check the actual viewid and avoid scrolling if the cursor is move by an other user. The second instance in the LO online code, for it we need to pass the viewid identifying the view which moved the cursor. Change-Id: I033274f88ce41acbb632e2aeb0d986ab11cd2d52 Reviewed-on: https://gerrit.libreoffice.org/52220 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Tamás Zolnai <tamas.zolnai@collabora.com>
2018-04-03accessibility: more simplifiation in OCommonAccessibleText.Arnaud Versini
Change-Id: If1284f2e50be08372dda08a8250263c9ec435923 Reviewed-on: https://gerrit.libreoffice.org/51825 Tested-by: Jenkins <ci@libreoffice.org> Tested-by: Arnaud Versini <arnaud.versini@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-04-01remove unused processfactory.hxx includesJochen Nitschke
and fix fallout Change-Id: Id06bf31f2075111e426ba40c84c885ae70697bee Reviewed-on: https://gerrit.libreoffice.org/52206 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Jochen Nitschke <j.nitschke+logerrit@ok.de>
2018-03-25accessibility: simplify OCommonAccessibleTextArnaud Versini
Change-Id: Ied5520179d15f0a854c16b14f5a5e6b84cef1300 Reviewed-on: https://gerrit.libreoffice.org/51514 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Arnaud Versini <arnaud.versini@libreoffice.org>
2018-03-08oox: preserve the ContentType of custom filesAshod Nakashian
Generic logic to preserve custom files with their correct ContentType. Standard default file extensions with respective ContentType preserved in [Content_Types].xml. Change-Id: I651ed691e9a4745cd2cb4b3c4d4c5fd7287b66c2 Reviewed-on: https://gerrit.libreoffice.org/50856 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Jan Holesovsky <kendy@collabora.com>
2018-03-08loplugin:constantparam in canvas..comphelperNoel Grandin
Change-Id: Ia666cb46c409852a13789389c032f0ce4377c0d5 Reviewed-on: https://gerrit.libreoffice.org/50927 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-03-08loplugin:unusedmethodsNoel Grandin
Change-Id: Id6b4edd265cb6bef31c72e2a0a440211d51c7c33 Reviewed-on: https://gerrit.libreoffice.org/50900 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-03-05drop sax::tools::*base64 methodsNoel Grandin
and use the underlying comphelper methods rather. This is so that I can break the dependency that tools has on sax, and can add methods that make sax depend on tools. Change-Id: I8a2d6ce2ffc3529a0020710ade6a1748ee5af7d5 Reviewed-on: https://gerrit.libreoffice.org/50767 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-02-27Use for-range loops in comphelper and configmgrJulien Nabet
Change-Id: I91033395cb30a4ba9e65adb89712b3c70a39a508 Reviewed-on: https://gerrit.libreoffice.org/50396 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
2018-02-26Introduce DocPasswordHelper::GetOoxHashAsVector() with salt value vectorEike Rathke
In preparation to use this in AgileEngine. Change-Id: I45fb6ba24b759a72af0c7afa22eae75f1ae728ce
2018-02-26Introduce enum comphelper::Hash::IterCount instead of boolEike Rathke
Clarifies intention, and with IterCount::NONE prepared to handle something like old PBKDF1, if anything actually used that. See https://tools.ietf.org/html/rfc8018#section-5.1 where iteration count is not part of the re-hash. Change-Id: I5f97ca7a91f611eced8ced0a0c64961c04535d36
2018-02-26Use unsigned char, it is..Eike Rathke
Change-Id: I691f138faf53846cb55db589dcf2f87d70d35b8d
2018-02-26Swap UTF16-BE to UTF16-LE in Hash::calculateHash()Eike Rathke
Change-Id: I3727eefe795efcc3cc0a199ed3c3efc358145c87
2018-02-26Accept also "SHA1" for "SHA-1" even if not specifiedEike Rathke
From oox/source/crypto/AgileEngine.cxx hashCalc() it looks as if "SHA1" is used in the wild instead of the "SHA-1" specified in https://msdn.microsoft.com/en-us/library/dd925810 But maybe that's just wrong and followed the "SHA512" without hyphen. Who knows.. accept both. Change-Id: Ie1c3b4adf66541a4b8d8b83a1c49df235f30cf04
2018-02-26Prepare to handle OOXML Agile Encryption password hash as wellEike Rathke
... that prepends the iteration count to the hash instead of appending it Change-Id: I090393e6337c110029e35baaa259b40ef4e5d416
2018-02-26Move convenience abstractions to DocPasswordHelper, tdf#104250 follow-upEike Rathke
Change-Id: If0775ccf14b631918e51342a767412948e812c87
2018-02-24Hash Base64, Sequence and cleansing, tdf#104250 prepEike Rathke
Change-Id: I58d48b8caa780138b8431bec9db20c9d0e9abce7
2018-02-24Implement OOXML password hashing algorithm, tdf#104250 prepEike Rathke
As per https://msdn.microsoft.com/en-us/library/dd920692 Change-Id: Iebacaf3549dab28fd3033f9c241130fd66782b25 Reviewed-on: https://gerrit.libreoffice.org/50259 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Eike Rathke <erack@redhat.com>
2018-02-14oox: cosmetic cleanupAshod Nakashian
Change-Id: Ifafd7338ddfec8b707b5ddf4acb39512faf186da Reviewed-on: https://gerrit.libreoffice.org/49325 Reviewed-by: Ashod Nakashian <ashnakash@gmail.com> Tested-by: Ashod Nakashian <ashnakash@gmail.com>
2018-01-30silence coverity#1428735 Use of untrusted scalar valueCaolán McNamara
Change-Id: I7e40f25ce506b1a26d683848a1bc83c16baf762f
2018-01-27lok: Allow whitelisting languages that should be used by LibreOfficeKit.Jan Holesovsky
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-25loplugin:unused-returns in basegfx..cppcanvasNoel Grandin
Change-Id: I32dc8c92871c8349651d2f4204a332d387e6e1b2 Reviewed-on: https://gerrit.libreoffice.org/48428 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-01-23new loplugin: pointerboolNoel Grandin
look for possibly bogus implicit conversions to bool when passing (normally pointer) args to bool params. this plugin comes in the wake of a couple of bugs caused by refactoring, where some of the call sites were not currently updated. Of the changes, the following are real bugs: desktop/../dp_persmap.cxx StartInputFieldDlg in sw/../fldmgr.cxx which occurred as a result of commit 39d719a80d8c87856c84e3ecd569d45fa6f8a30e Date: Tue May 3 11:39:37 2016 +0200 tdf#99529 sw: don't pop up input field dialog before inserting field CSerializationURLEncoded::encode_and_append in forms/../serialization_urlencoded.cxx XclExpCFImpl::XclExpCFImpl in sc/../xecontent.cxx I have no idea how to properly fix this, just made a guess. SwDocTest::test64kPageDescs in sw/qa/core/uwriter.cxx which looks like a simple copy/paste error. Change-Id: I795ebd5ef485a1d36863dc27fe13832989f5a441 Reviewed-on: https://gerrit.libreoffice.org/48291 Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk> Tested-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-01-23More loplugin:cstylecast on WindowsStephan Bergmann
Automatic rewrite (of loplugin:cstylecast and loplugin:unnecessaryparen) after cab0427cadddb3aaf1349c66f2fa13a4234ba4b2 "Enable loplugin:cstylecast for some more cases" and a409d32e7f6fc09e041079d6dbc3c927497adfed "More loplugin:cstylecast" Change-Id: Ib3355159dd08333e1b7a8d091caf2069cdcc7862 Reviewed-on: https://gerrit.libreoffice.org/48317 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2018-01-19loplugin:unusedmethods also check for functions returning boolNoel Grandin
we were previously excluding them Change-Id: I48a68799b0de60b4995fae541eb363e043d4dd11 Reviewed-on: https://gerrit.libreoffice.org/48167 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-01-17xmlsecurity: cleanup commentThorsten Behrens
Change-Id: I1e34e1c4c51411be3de2dbd417126d263713c88a
2018-01-15tdf#114488 Rank multiple images also for flat odfSamuel Mehrbrodt
Only the file extension was considered before which is not available in flat odf. Now both internal and external URLs are resolved to their respective mimetype. Change-Id: Id7e290cd9a441a1a6c2ce5e8d764391c50495bea Reviewed-on: https://gerrit.libreoffice.org/47824 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Samuel Mehrbrodt <Samuel.Mehrbrodt@cib.de>
2018-01-15More loplugin:cstylecast: comphelperStephan Bergmann
Change-Id: I64421e43afd7086a582fcfae0fd97b2afb6f8ef4
2018-01-15loplugin:useuniqueptr in comphelper,cppu,registryNoel Grandin
Change-Id: Ib353d901827e417498fe4f8e397f1a57c61a9736 Reviewed-on: https://gerrit.libreoffice.org/47794 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-01-13tdf#114550 use 32 bit random session key for gpg encryptionThorsten Behrens
Otherwise we'd need to pointlessly spread it to 32 bit down the road for AES. Change-Id: I7303be71fd855aa454d07fcae04d7f42e3c9cd9c Reviewed-on: https://gerrit.libreoffice.org/47781 Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de> Tested-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
2018-01-13gpg4libre: open encrypted files also via gpgThorsten Behrens
Adds code to sfx2 and package to try gpg4libre for extracting session keys, and use them in turn to decrypt odf storage. Change-Id: I1f626143e6c8443b4ad0c4fc5bdbd5ab8d56a451 Reviewed-on: https://gerrit.libreoffice.org/47780 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
2018-01-12tdf#114939 sfx2: notify user of non-interoperable passwordsMichael Stahl
For ODF 1.1 encryption, SHA1 is used as the start-key digest algorithm of PBKDF2. For the ODF export password-to-modify "feature", PBKDF2 is used without a start-key digest round, so the UTF-8 encoded password is directly the input. In both cases, if the user entered a password with a known problematic length, reject it and request a new one. Change-Id: Ie6510c1e668e1ed32be439ebe00354881b6ca83f
2018-01-12tdf#114939 package,comphelper: Try both real SHA1 and StarOffice SHA1Michael Stahl
... when importing ODF documents. In CreatePackageEncryptionData(), add a 3rd SHA1 password hash, PackageSHA1CorrectEncryptionKey, to EncryptionData. Use it in ZipPackageStream::getDataStream(), which has 3 fall-backs for SHA1 bugs now. Also add a CorrectSHA1DigestContext, to be used together with PackageSHA1CorrectEncryptionKey, and rename the existing one to StarOfficeSHA1DigestContext, to be used together with the existing 2 PackageSHA1{UTF8,MS1252}EncryptionKey. The fallback won't be used very often anyway: for the password SHA1 to be wrong, you need a password between 52 and 55 bytes long, and for the SHA1/1K checksum to be wrong, you need a file smaller than 1K with compressed size mod 64 between 52 and 55; all XML files have enough random "chaff" added to be too large. Test that we can read both correct SHA1 and StarOffice SHA1. Change-Id: I988fa489b5e40c7657f404f18538f637d54d28f1
2018-01-12More loplugin:cstylecast: comphelperStephan 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: I71a5092b344f206f2c7de606f2739d3b6e2cf0bb
2018-01-04loplugin:unusedfieldsNoel Grandin
fix the ReturnStmt check Change-Id: I95076076bd1313d23798c4615ea12910c86ed9a8 Reviewed-on: https://gerrit.libreoffice.org/47309 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-12-28Full UBSan in external/firebirdStephan Bergmann
...after 6a312a4a3d642f0f9769df54c0ec25471c9916bd "Prepare external/firebird for sanitizers". Doing `make check screenshot` on Linux with Clang -fsanitize=undefined -fsanitize=local-bounds -fsanitize=nullability works now. Patches that might be unwanted in non-UBSan builds are added to sanitizer.patch while unproblematic ones are added to always-included ubsan.patch. CppunitTest_dbaccess_firebird_test, e.g., shows that comphelper::AsyncEventNotifierAutoJoin::onTerminated called base-class osl::Thread::onTerminated (which does nothing, anyway) of an already destroyed object, so just drop that. Change-Id: If50f442ee6dbe590db843c38681d1c1cade8fa6a Reviewed-on: https://gerrit.libreoffice.org/47122 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2017-12-19lokdialog: Allow windows / dialogs in different languages.Jan Holesovsky
Change-Id: I9f32161981aed73e6d97696e5f976af276d1625a Reviewed-on: https://gerrit.libreoffice.org/46327 Reviewed-by: Michael Meeks <michael.meeks@collabora.com> Tested-by: Michael Meeks <michael.meeks@collabora.com> Reviewed-on: https://gerrit.libreoffice.org/46775 Tested-by: Jenkins <ci@libreoffice.org>
2017-12-19inline use-once typedefsNoel Grandin
Change-Id: I5c3ffc03c26b3428f1f336e6ecba7838a1cf1157 Reviewed-on: https://gerrit.libreoffice.org/46764 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-12-18loplugin:unusedindexMike Kaganski
Change-Id: I256a807dd2a4c81126b5a76f3d472e31b8224146 Reviewed-on: https://gerrit.libreoffice.org/46652 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-12-15lok: calc: LOK_FEATURE_RANGE_HEADERSMarco Cecchetti
For allowing the client to enable/disable the new range based header data Change-Id: I95da8ec3e48137fb75b9b22af3bb1296001ba9ca Reviewed-on: https://gerrit.libreoffice.org/46095 Reviewed-by: Jan Holesovsky <kendy@collabora.com> Tested-by: Jan Holesovsky <kendy@collabora.com> (cherry picked from commit 069cf9321be51e7203e336e0e87d8ba7dc9b729e) Reviewed-on: https://gerrit.libreoffice.org/46570 Reviewed-by: Marco Cecchetti <mrcekets@gmail.com> Tested-by: Marco Cecchetti <mrcekets@gmail.com>