Commit Graph

279 Commits

Author SHA1 Message Date
5ce42c2165 Some simplifications, using UNO_QUERY_THROW
Change-Id: Ieee649609a7f01b4d51ed6ed78a8ae809ca61d9e
Reviewed-on: https://gerrit.libreoffice.org/34268
Tested-by: Stephan Bergmann <sbergman@redhat.com>
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2017-02-15 14:18:47 +00:00
ea5fffddcf Remove misguided comment
...introduced with 7757a18cfd77996f4ce8aef2cbb8c70425ae92da "INTEGRATION: CWS
oj14", but for one !xDoc.is() is explicitly handled below, and for another
xLoadable is only used if !xDoc.is().  So the requirement is apparently that not
both are null, indeed.

Change-Id: I1b59e99c86c88c5266b33e9ff782054fa40dd34d
2017-02-13 22:13:42 +01:00
6dce9c6757 Add missing #includes
...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
2017-02-06 17:21:16 +01:00
1c3e84d819 teach lolugin:stringconstant about calling constructors
so we can remove unnecessary calls to the OUString(literal) constructor
when calling constructors like this:
   Foo(OUString("xxx"), 1)

Change-Id: I1de60ef561437c86b27dc9cb095a5deb2e103b36
Reviewed-on: https://gerrit.libreoffice.org/33698
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-01-31 08:56:20 +00:00
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
4f5b22b93a use rtl::Reference in OCommonEmbeddedObject
instead of manual acquire/release

Change-Id: Ie641f72687a05e1cd3cf697d551f9c6d21ac4487
2017-01-23 07:56:34 +02:00
930f0242a1 replace <<= with assign for <<= with rhs Any
queryAggregation and queryInterface return Any

Change-Id: Ib8e3e742bd66f7419cad583988b247bb628f7b4a
Reviewed-on: https://gerrit.libreoffice.org/29912
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Jochen Nitschke <j.nitschke+logerrit@ok.de>
2016-10-19 05:28:29 +00:00
9035f00ede embeddedobj: add a comment why the original size is restored
... in OCommonEmbeddedObject::getPreferredVisualRepresentation()

Change-Id: I326b7df4350f34fc9a1c363ea0e9bc77d8f1e976
2016-09-16 14:36:38 +02:00
74844277cc disable generation of ole previews in ODF format until after load
so the user update links dialog can control their generation

SdrEmbedObjectLink becomes exposed to calc so it can
detect if the link dialog needs to be used to update
ole links.

Change-Id: Id1dd7ea17342140eab9307d546528747e3a98090
Reviewed-on: https://gerrit.libreoffice.org/28879
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Tested-by: Caolán McNamara <caolanm@redhat.com>
2016-09-15 11:55:28 +00:00
b4e3c29f8a Fix typo: completelly -> completely
Change-Id: I566c5554bf32ea18121c5a186365b97c91667c5d
2016-07-29 10:07:33 +09:00
508c95f1b6 improve passstuffbyref return analysis
Change-Id: I4258bcc97273d8bb7a8c4879fac02a427f76e18c
Reviewed-on: https://gerrit.libreoffice.org/27317
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
2016-07-27 06:48:25 +00:00
54f83fee84 tdf#56818, use SolarMutex instead of own Mutex
There is a SolarMutexReleaser in the call chain so that using an own
mutex can deadlock.

Change-Id: I1dd0b0c78ce6cf436a470319e616099cb947b6e0
Reviewed-on: https://gerrit.libreoffice.org/27085
Reviewed-by: Markus Mohrhard <markus.mohrhard@googlemail.com>
Tested-by: Markus Mohrhard <markus.mohrhard@googlemail.com>
2016-07-11 05:28:46 +00:00
fc2590cfa1 Fix typos
Change-Id: Id81b16ff26283611f0b84929d831c827f847ab73
Reviewed-on: https://gerrit.libreoffice.org/24317
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Markus Mohrhard <markus.mohrhard@googlemail.com>
2016-04-30 15:06:45 +00:00
bc9047540a loplugin:salbool: Automatic rewrite of sal_False/True
Change-Id: I8542bfaf9e27792369617c44258ddcc393e490a2
2016-04-20 17:25:40 +02:00
a238b1f8d3 Remove excess newlines
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>
2016-02-09 08:18:05 +00:00
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
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
a508f639a0 mark UNO structs as SAL_WARN_UNUSED, where possible
Change-Id: Ie3de518f60c9f1313c68df54dbdc1fb2804f1f0d
2015-11-26 13:26:25 +02:00
09efeeb41a loplugin:nullptr (automatic rewrite)
Change-Id: I225d5fe2e3476121e2ca307d815d5615e32311d7
2015-11-10 10:31:24 +01:00
4770941171 loplugin:stringconstant: elide explicit ctor usage (automatic rewrite)
Change-Id: I5528b17c106aefde4c58dfef00e30fdcf62f7db7
2015-11-06 09:35:43 +01:00
59b072e22b yyyyy
Change-Id: I9a947beefd2dfe21da8239e841ea3fb416bd1548
2015-11-04 14:10:44 +02:00
3c971162b5 use uno::Reference::set method instead of assignment
Change-Id: I150f213ab033f5fc1b50abe4e1529292206c9feb
Reviewed-on: https://gerrit.libreoffice.org/19689
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
2015-10-31 12:56:38 +00:00
b36963c0a6 Replace "SAL_OVERRIDE" with "override" in LIBO_INTERNAL_ONLY code
Change-Id: I2ea407acd763ef2d7dae2d3b8f32525523ac8274
2015-10-12 17:52:29 +02:00
e6534a6099 com::sun::star->css in embeddedobj/
Change-Id: Ia04fc28ce8e1d70f86520edf2df8c98f7b455465
Reviewed-on: https://gerrit.libreoffice.org/19024
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
Tested-by: Noel Grandin <noelgrandin@gmail.com>
2015-10-01 08:03:29 +00:00
35fd0cf311 cppcheck: noExplicitConstructor
Change-Id: I39194062ba68c4cb1ccc9b93c629f005ccd02497
2015-09-13 22:42:35 +01:00
38023af6c1 loplugin:unusedmethods
Change-Id: If5090c330e12d6e537766bf4a9be0a2360381a7a
Reviewed-on: https://gerrit.libreoffice.org/17312
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
2015-07-24 10:36:20 +00:00
f2b218468f fix indentation
Change-Id: Ifda010d2a8f51c6981cac889bfaa1edaacd22df2
2015-07-16 08:15:16 +02:00
7e5e4ac54c coverity#1308586 Uncaught exception
Change-Id: I86097e94dd47153a919bb7721376c5b98b50354e
2015-06-29 12:58:03 +01:00
69c88a32aa Fix typos
Change-Id: Ifd126a535f18db79a18aaec61b76cdf26ab33dff
Reviewed-on: https://gerrit.libreoffice.org/16522
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
Tested-by: Julien Nabet <serval2412@yahoo.fr>
2015-06-28 12:28:31 +00:00
4ec27ad35f Resolves: tdf#91683 Revert avoid activating chart objects...
just to get their mapunit or set visual size.

Will have to try something different here apparently

This reverts commit 757f461ef12548af0be470f7c05ff67df3dc1314.

(cherry picked from commit f2b3519c6b2aceacbe2fd9d53eb52dd36a356ecc)
2015-06-23 09:13:35 +01:00
b717bda1f6 tdf#67421: Prevent unloading objects due to cache full
When an object is added to OLE objects cache, when cache is full,
old objects are tried to be unloaded. This triggers notifications
that cause all loaded objects to become active, and to be added to
cache (moved to front).

As the new object already was added to front of the cache, later
activity pushes it to back, until it is the last object in cache.
The cache in this process is overfilled, so each next refresh tries
to unload current last OLE object. So, in the end, this effectively
unloads all cached OLE objects.

This patch prevents this by first unloading last object, and then
adding new object to front of cache.

Also, removed needless creation of reference (makes at least 200
function calls for no reason).

Change-Id: Ia903f4df101971df1b0b0148320fc8e45ac1e79c
Reviewed-on: https://gerrit.libreoffice.org/15772
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Michael Stahl <mstahl@redhat.com>
2015-05-19 14:44:20 +00:00
ed85e11a1b embeddedobj: allow creating objects lacking a FileFormatVersion=6800 filter
dbaccess::ODatabaseDocument::loadFromStorage() is still not implemented,
though.

Change-Id: I1be11f2a2274f67dd0a11f96a718394d5f72605f
2015-05-04 16:12:14 +02:00
112e5f302e embeddedobj: allow embedding objects lacking a FileFormatVersion=6800 filter
The "own" filter of Base has FileFormatVersion=6200.

Change-Id: I3bbd28ebcf4d517ea9cefe692b01b688358c51e8
2015-04-30 15:41:25 +02:00
e78a3bfdc8 Replace remaining getCppuType et al with cppu::UnoType
Change-Id: I1ee944679d509929e47218f88b6fe4be4905a202
2015-04-01 08:39:02 +02:00
91261d6da0 Reduce to static_cast any reinterpret_cast from void pointers
Change-Id: Iad5d2858976ed789823aaac3aa7f2937233f1dfc
2015-03-31 13:13:53 +02:00
757f461ef1 avoid activating chart objects just to get their mapunit or set visual size
the motivation is SwWrtShell::CalcAndSetScale

and the assert/crash triggered by

ooo58458-1.odt ooo84729-2.odt ooo75058-1.odt ooo123605-1.odt ooo102990-1.odt
fdo57249-1.odt fdo50880-1.odt fdo70223-5.odt ooo30052-2.odt ooo119280-1.odt
ooo79009-1.odt ooo58182-2.odt ooo59992-1.odt ooo123607-1.odt ooo89304-1.odt
ooo91578-5.odt ooo89303-1.odt ooo30052-1.odt fdo65664-3.odt ooo119941-1.odt
ooo55761-1.odt fdo57249-2.odt ooo83229-3.odt ooo84729-1.odt ooo102990-2.odt
ooo37749-1.sxw ooo38798-1.sxw ooo27909-1.sxw

getMapUnit activates the object which can cause chart object to load data from
the current document and appears to attempt to stop and resume pending layout
actions which can't be done if layout is underway, hence the assert from the
inner SwLayAction::SwLayAction triggered by the runstate while an SwLayAction::SwLayAction
is already active for counting the number of pdf output pages.

getMapUnit always returns the same result regardless of anything else and the
assumption is that we don't need to be in run state to setVisualSize on it

Change-Id: Ie75b159b140de223a56324b39699d703c3b40bb9
2015-03-27 10:45:38 +00:00
924b2923b8 V801: Decreased performance
Change-Id: I9e9a00acf9503980f0c6c7cd0a20378e5ca7390d
2015-03-09 20:56:26 +00:00
5b81128f77 tdf#88624 set DocumentBaseURL when saving report
regression from 1d38cb365543924f9c50014e6b2227e77de1d0c9

Change-Id: Ia8cfe47b9d92889b3724f394db5090a59e69dd48
2015-02-14 19:54:56 +01:00
d9da9b4411 add an explicit virtual keyword here, like the other ones
Change-Id: I4c5acf42d5ec33df1dd18dc3a70be7de838c9ff3
2015-02-02 16:26:18 +00:00
c33c309f13 OOoEmbeddedObjectFactory does implement optional XLinkFactory
regression from 251f1b0b38be7d1267339898e44e320f05849e22 "fdo#46808, Adapt
embed::*EmbeddedObjectCreator UNO services to new style"

Change-Id: Id8b49c04183d3bc98f22398a8e43c80909c1ea11
2015-02-02 13:38:30 +01:00
52c2111e4f callcatcher: remove some unused methods
Change-Id: Id3ca991e9ede13512a39865496429aabb7e71088
2015-02-02 12:37:11 +00:00
b44cbb26ef new loplugin: change virtual methods to non-virtual
Where we can prove that the virtual method is never overriden.

In the case of pure-virtual methods, we remove the method entirely.
Sometimes this leads to entire methods and fields being
eliminated.

Change-Id: I138ef81c95f115dbd8c023a83cfc7e9d5d6d14ae
2015-01-26 08:42:28 +02:00
9f806fcad2 embeddedobj: Use appropriate OUString functions on string constants
Change-Id: I149dd1abf03437bb58829a5f16a8c2aef5eec092
2014-12-18 14:12:25 +01:00
15b4ab8d19 cppuhelper: clean up public headers with include-what-you-use
Change-Id: I41ba46831f24b2960a1fe982b74a2b623e682e0b
2014-11-18 18:51:49 +01:00
6a0fe37dec sal: clean up public headers with include-what-you-use
Sadly cannot forward declare "struct {...} TimeValue;".

rtl/(u)?string.hxx still include sal/log.hxx but removing osl/diagnose.h
was painful enough for now...

Change-Id: Id41e17f3870c4f24c53ce7b11f2c40a3d14d1f05
2014-11-17 11:06:53 +01:00
d32be3ace8 fdo#86023 - O[U]String needs a 'clear' method
Added clear() method to OString and OUString class, Updated appropriate call-sites.

Change-Id: I0ba97fa6dc7af3e31b605953089a4e8e9c3e61ac
Signed-off-by: Stephan Bergmann <sbergman@redhat.com>
2014-11-14 09:20:38 +01:00
da40cac540 Fix common typos. No automatic tools. Handmade…
Change-Id: I1ab4e23b0539f8d39974787f226e57a21f96e959
Reviewed-on: https://gerrit.libreoffice.org/12164
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
Tested-by: Noel Grandin <noelgrandin@gmail.com>
2014-11-12 11:04:11 +00:00
9aad656156 coverity#703952 Unchecked return value
originally return was checked in

commit c37f4bb94a119e4031796c097a35c1217e221e6c
Date:   Tue Nov 4 13:30:21 2003 +0000
    #112739# add breakLink method

then use of bElExists was removed in

commit aec29756d7e058b47dc8dcef79bc93c3e9c61928
Date:   Fri Nov 14 14:24:28 2003 +0000
    #112923# ole implementation related changes

at which point this line should have been removed, but it wasn't

later at

commit 00b1faf239dbf676178dcaa0d15a1678d1148a0d
Author: Jens-Heiner Rechtien <hr@openoffice.org>
    INTEGRATION: CWS warnings01 (1.19.10); FILE MERGED
    2005/11/03 10:31:40 cd 1.19.10.1: #i55991# Warning free code for gcc

this still wasn't removed, just bElExists commented out

Change-Id: I1af2635558cd4f47da06e148e45489f522e0183f
2014-10-11 17:33:53 +01:00
e27ac011c3 loplugin: cstylecast
Change-Id: I9fca98995131358b3b112b11e0b28feb1a3267d1
2014-10-01 13:08:43 +02:00
a0bd5587a5 bnc#883684: Better fix for this.
Instead of making all chart objects exempt from unloading, check each OLE
object on whether or not it already has its persistent storage created.
If not, don't unload it else it would have nothing to load back from once
unloaded.

Change-Id: I2312e86c9376d3699ef4aa1e0cf2f4c04f706c1e
2014-07-11 11:16:00 -04:00