Commit Graph

257 Commits

Author SHA1 Message Date
fca62934f4 basic: use SolarMutex to lock SfxLibraryContainer
Originally this used both SolarMutex and an own mutex, then a deadlock
was resolved in 2fe6a4a34b38c05e252c71f4d2f18e4a90e61b29 by not locking
SolarMutex.

Since the class will call event listeners without dropping the mutex
e.g. in insertNoCheck(), using the SolarMutex appears better anyway.

With this, installing a BASIC extension no longer triggers SolarMutex
asserts in SfxBroadcaster.

Change-Id: Ib9a2ee491ef53b1a53855af0fc22e863c5e7cb91
2014-10-08 15:46:06 +02:00
a7fbabdacd fdo#52076 remove Library dir when no library
when saving to same storage (in place)
we already did that when empty "Standard" was the only library,
but not when there was no library...
Cannot get through that state in through UI, but possible through scripting.

Change-Id: I0f1129e034ac31b3eaf6bd388a03aee5aae5b87e
2014-09-04 12:06:51 +02:00
513d95f318 detect if Standard is only library to *save*
as opposed to only library at all

Change-Id: I23bebfe7d156e1f4a60bc5f265a3cf9d295f3e4a
2014-09-04 12:06:50 +02:00
6846c1c88e add const qualifier
Change-Id: I88d61668b465e505cfa245dd17893828aaaecaa8
2014-09-04 12:06:50 +02:00
1392a88c25 fdo#52076 remove empty library instead of writing it out empty
Change-Id: Id4fd8c4f34e8ed07044eb428049731c4b9b694ca
Reviewed-on: https://gerrit.libreoffice.org/10507
Reviewed-by: Lionel Elie Mamane <lionel@mamane.lu>
Tested-by: Lionel Elie Mamane <lionel@mamane.lu>
2014-07-24 15:34:09 +00:00
c80be30203 coverity#706241 Uncaught exception
we've already checked to see if the element exists, so
we know that its not there.

Change-Id: I538c0d48a883d478e4c748d222b21958d083c049
2014-07-03 08:29:41 +01:00
b35f3dfb1a coverity#706240 Uncaught exception
Change-Id: Ie31f5e1ff74ff8b9f35d7ce08e1f02a780375890
2014-07-01 16:43:05 +01:00
533c6cb6ba fixes for up-casting to Reference<XInterface>
Fix regressions introduced with
6a043e9c0acff20e1618ca8ec15c21d5d0fd0d37 "Use the new type-checking
Reference constructor to reduce code noise"

Change-Id: I85662856f21c810a7db497fe3b0e116f075b1687
Signed-off-by: Stephan Bergmann <sbergman@redhat.com>
2014-06-25 17:10:43 +02:00
2278e8f80e coverity#1213486 Uncaught exception
Change-Id: Ia4d919d88bf22168aa770ad35fd8360b0b155efe
2014-06-13 09:50:53 +01:00
9284a63add iprevent violation of exception spec
Change-Id: I1f638ae3a2e88e0cadaab0046ef087fe77e16b06
2014-06-10 15:58:24 +02:00
6a53ea218c Avoid possible memory leaks in case of exceptions
Change-Id: Iad3de981a1c9660b1322315640e531c9891db0bf
2014-05-31 00:35:27 +09:00
0f2824b117 remove more unnecessary use of OUString constructor
Change-Id: Iae14cb3df65295b6894fd9e05411c5698e9c8aba
2014-05-27 08:20:12 +02:00
e7bc3cab01 remove boilerplate in UNO Exception constructor calls
Now that we have default values for Exception constructor params,
remove lots of boilerplate code.

Change-Id: I620bd641eecfed38e6123873b3b94aaf47922e74
2014-05-23 15:06:00 +02:00
b09b5f8f7c Prefer cppu::UnoType<T>::get() to ::getCppuType((T*)0) part19
Change-Id: Iab50c52a132c90389992ef68c2d31df95a193ab9
2014-05-22 23:21:18 +02:00
5246fa2624 fdo#68983: basic: if the library is not loaded fully, copy source storage
Also fixes fdo#42899 and fdo#67685 in a different way; the previous fix
for fdo#42899 caused the problem with password-protected libraries for
which the password is not known: only the binary representation of the
BAISC module was stored, not the source code; by simply copying from the
source storage the problem can be avoided.

It would be possible to ask for the password when storing, but that
would not work when non-interactive (called via API).

An alternative fix would be to pass in the
SfxObjectShell::IsSetModifyEnabled() flag and actually reset the BASIC
library's modify flag correctly, but that requires adding a
parameter to XStorageBasedLibraryContainer::storeLibrariesToStorage().

(regression from af34774d260a68fc02cd78ba90dd8d4afaf1a2a4 )

Change-Id: I4701401f35171139fc2fe8d225d13d4e533091a0
2014-05-22 13:12:55 +02:00
5ca4b9d510 Revert "fdo#67685 open xSourceLibrariesStor only when needed"
This reverts commit fc9080a0c60f263d00eb71111fcda72b3c0a2ebb.

This bug was apparently introduced by
af34774d260a68fc02cd78ba90dd8d4afaf1a2a4, which will be reverted
in the next commit.

Change-Id: I81ccb5bf9cc7e29fbf1e66d02f38268ee1fd1d0c
2014-05-22 13:12:55 +02:00
0e21019e0d fdo#68983: Revert "remove #if 0 block (from ...
... af34774d260a68fc02cd78ba90dd8d4afaf1a2a4)"

This reverts commit cbd1a89676f39135ed2e9c47d20475b2053289b9.

Conflicts:
	basic/source/uno/namecont.cxx

Change-Id: I665f2e875c6b339ad718ca53fd0e54328efaeaff
2014-05-22 13:12:55 +02:00
5ec7a589be Prefer cppu::UnoType<T>::get() to ::getCppuType((T*)0) part8
Change-Id: Ie16923d17541e84e0d7424fffe37caf410786abf
2014-05-10 06:19:42 +02:00
cc725643fd Clean up function declarations and some unused functions
Change-Id: I63c4c61847fea4500b667a5ea9f2b32207692033
2014-04-09 10:12:02 +02:00
1eee88dd6b basic: sal_Bool->bool
Change-Id: I1c084ca86c0b1308eb2fc1451ba34d2e702c6a7f
2014-04-07 13:53:50 +02:00
675194c83d coverity#706238 Uncaught exception
Change-Id: I10bd34115be12dc752987ddbe5d93862aa072e72
2014-04-04 09:35:19 +01:00
5babf1b903 remove unnecessary scope qualifier from sal_Bool uses
i.e. convert "::sal_Bool" to "sal_Bool"

Change-Id: Ie5943aee4fee617bf2670655558927ed25b7e067
2014-04-03 13:54:02 +02:00
061130bd6d fdo#75280 Started cleaning up of sal_uIntPtr usage.
Converted wrong usage of sal_uIntPtr to appropriate other types in basic
module.

The bug is not fully fixed with this since many other occurences of sal_uIntPtr remain.

Update due to code review comments:
Fixed forgetting to change some declarations in iosys.cxx.
Cleaned up the one remaining sal_uIntPtr in iosys.cxx
Fixed adding a sal_uInt64 to a Date (uses long now instead) in methods.cxx
Fixed the VarDecFromUI4 call in sbxdec.cxx from sal_uLong to ULONG .

Conflicts:
	basic/source/runtime/iosys.cxx

Change-Id: Ia6460be04967deb68b92eb62d945da8814fae605
2014-03-28 20:08:46 +01:00
77fd24afc6 Remove remaining DBG_CTOR etc. remnants from basic
Change-Id: Ia714029c2e32e28c1bb6f4f59d0c7f357eccc236
2014-03-28 15:15:26 +01:00
f288d7dcbd basic: sal_Bool->bool
Change-Id: Id4952b6f97f9e8f917fea5651dee91499d109e48
2014-03-27 13:45:08 +02:00
d7c5d9e385 basic: sal_Bool->bool
Change-Id: Idfe18863b2c6f60da5192d661f66e85a2bac09e5
2014-03-27 13:45:08 +02:00
90dcd2ac13 basic: simplify deprecated XTypeProvider.getImplementationId
Change-Id: I7f0d75c5eaa62f012cb2ae19c5107c09cbc6936a
2014-03-10 17:39:52 +01:00
5e21a413c7 cppuhelper: retrofit std::exception into overriding exception specs
Change-Id: I56e32131b7991ee9948ce46765632eb823d463b3
2014-02-26 18:22:20 +01:00
6a38eace8c Remove visual noise from basic
Change-Id: I10865b94f67de39e9dbcbe71ede42aa94d81db61
Reviewed-on: https://gerrit.libreoffice.org/8234
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Tested-by: Caolán McNamara <caolanm@redhat.com>
2014-02-25 21:09:17 +00:00
295bc8703f basic: remove use of sal_uIntptr in favor of more appropriate type
Change-Id: Ie878f43c7245838519fe7477b039827b079dde63
Reviewed-on: https://gerrit.libreoffice.org/8214
Reviewed-by: Norbert Thiebaud <nthiebaud@gmail.com>
Tested-by: Norbert Thiebaud <nthiebaud@gmail.com>
2014-02-25 00:26:43 +00:00
0ce0c369aa Remove unneccessary comments
Change-Id: I939160ae72fecbe3d4a60ce755730bd4c38497fb
Reviewed-on: https://gerrit.libreoffice.org/8182
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Tested-by: Caolán McNamara <caolanm@redhat.com>
2014-02-23 03:38:49 +00:00
ac6e8ac7e4 typo fixes in comments
Change-Id: Idd49478d59cd062118fbf8e99d1c8bc5250013fc
2014-02-06 23:22:30 +01:00
527eb5ae5c Typo: applictaion -> application
Change-Id: I2d578cb417bb1e814dcf3007f500fe8ff77510f7
2014-02-06 21:51:36 +01:00
f96f38f8f8 bool improvements
Change-Id: I571354540f1ab108c55d32c20786d34a799c3bed
2014-01-28 20:26:30 +01:00
5c734f440a coverity#738565 Uninitialized scalar field
Change-Id: Ie969773240bd7ecdcf56d7c533010d0aa32872c8
2014-01-28 11:29:15 +00:00
6cccf0f388 bool improvements
Change-Id: I64288207adb083e006b4acc5e7f26d647236a443
2014-01-21 18:24:03 +01:00
8b308d510e basic: include <> for external includes
Change-Id: I4715bbe853d60ef15f20a4d2441c688003ca568e
2013-11-11 22:37:24 -06:00
a2505ae731 SAL_WARN_UNUSED INetURLObject
Change-Id: Ia9af3b76c2a2ac654b02c1502aa2d0c2c987fbf2
2013-11-11 16:50:05 +01:00
e9c4ee996d remove unnecessary use of OUString constructor in BASIC module
Change-Id: Iee86ce9200285647d5031cb2f89266a52704dd44
2013-11-11 11:21:25 +02:00
4adf622925 fixincludeguards.sh: basic
Change-Id: Id797a8969e42876092da347d8e1bba6195b697dc
2013-10-28 15:16:20 +01:00
2d1675c3ad The getSupportedServiceNames implementations will already take care
Change-Id: I0c7ae8e0393f069259b943e04368e874abdf8386
2013-10-17 15:03:50 +02:00
3d3293144b fdo#54938: Adapt svtools and comphelper module ...
to  use cppu::supportsService and other pieces.

Change-Id: I16893b3d31a8055acd214ff23d01e63d38fe0826
Signed-off-by: Stephan Bergmann <sbergman@redhat.com>
2013-10-17 14:43:28 +02:00
f58ee783ee Improve ErrorCodeIOException messages
...and clean up some includes.

Change-Id: Ia5843cd38f967722d7173a6c87fba26064e3ffd6
2013-10-09 21:02:11 +02:00
d57010faf1 sal_Bool to bool
Change-Id: Ie8e35c4342db6e2dc35fca33cee7b4d71cfcb732
2013-10-07 17:08:18 +09:00
98de5b40c8 Related: fdo#38838 remove UniString::EqualsIgnoreCaseAscii
Change-Id: Ib5c3a2daa4a48bc286b14fa2cebb3306ea0012bc
2013-09-25 19:24:23 +02:00
41dec09ed3 convert BASIC from String to OUString
Change-Id: I4b046e4c460305acad29862341092af948639215
2013-09-17 09:05:52 +02:00
ed0f0fa730 XubString->OUString
Change-Id: I5424a148c7173409e6e56f9483fcc769696707bc
2013-09-02 12:22:34 +01:00
c6a7300974 Use subfolder names from <config_folders.h>
Change all instances of hardcoded "program", "share" etc subfolder names to
use those from <config_folders.h> instead. In normal builds, the end result
will not change.

Change-Id: I91c95cd8e482818be67307e889ae6df887763f53
2013-08-18 21:11:16 +03:00
a43a18edb0 do *not* silently ignore errors when saving libraries
In case of error, it leads to *data* *loss*.

Change-Id: I80d806ef10a3364174eced3095ebf1ea217d75b4
2013-08-02 23:36:40 +02:00
fc9080a0c6 fdo#67685 open xSourceLibrariesStor only when needed
else it keeps loadLibrary from completing,
because the latter cannot open the storage
because it is already open in read/write mode.

Change-Id: Icd0aabfff6e67af2c38a8f9185f8485b46ab1516
2013-08-02 23:36:40 +02:00