Commit Graph

808 Commits

Author SHA1 Message Date
582ef22d3e fdo#84854 it seems long is not enough on 32 bit
Fraction used BigInt internally for computations, rational does nothing
like that.

Change-Id: I3e9b25074f979bc291208f7c6362c3c40eb77ff5
2014-10-16 17:44:44 +02:00
4c12951a03 Typo: compatability->compatibility
Change-Id: If0b98a30452a9d1fcc340173deb6856755926471
2014-10-12 13:00:46 +02:00
47a2d7642d fdo#81356: convert Fraction to boost::rational<long> - wip
* Added rational util functions used by Fraction class not
  available in the boost::rational class.
* Replaced usage of Fraction by boost::rational<long>
* Removed code that relies on:
  1. fraction.IsValid() -- rational only allow valid values, ie
     denominator() != 0
  2. rational.denominator() == 0 -- always false
  3. rational.denominator() < 0 -- always false but implementation
     detail: http://www.boost.org/doc/libs/release/libs/rational/rational.html#Internal%20representation
* Simplified code that relies on:
  1. rational.denominator() != 0 -- always true
* BUGS EXIST because Fraction allows the creation of invalid values but
  boost::rational throws the exception boost::bad_rational

Change-Id: I84970a4956afb3f91ac0c8f726547466319420f9
Reviewed-on: https://gerrit.libreoffice.org/11551
Reviewed-by: David Tardon <dtardon@redhat.com>
Tested-by: David Tardon <dtardon@redhat.com>
2014-10-09 11:33:33 +00:00
8f436d3de7 use comphelper::rng::uniform_*_distribution everywhere
and automatically seed from time on first use

coverity#1242393 Don't call rand
coverity#1242404 Don't call rand
coverity#1242410 Don't call rand and additionally allow 0xFF as a value
coverity#1242409 Don't call rand
coverity#1242399 Don't call rand
coverity#1242372 Don't call rand
coverity#1242377 Don't call rand
coverity#1242378 Don't call rand
coverity#1242379 Don't call rand
coverity#1242382 Don't call rand
coverity#1242383 Don't call rand
coverity#1242402 Don't call rand
coverity#1242397 Don't call rand
coverity#1242390 Don't call rand
coverity#1242389 Don't call rand
coverity#1242388 Don't call rand
coverity#1242386 Don't call rand
coverity#1242384 Don't call rand
coverity#1242394 Don't call rand

Change-Id: I241feab9cb370e091fd6ccaba2af941eb95bc7cf
2014-10-06 14:13:27 +01:00
c625525ddc rename SvRef::AddRef to AddFirstRef
to make it's intended purpose clearly distinguishable from AddNextRef

Change-Id: I5da780b48b19fd873667b648031bc394113f953b
Reviewed-on: https://gerrit.libreoffice.org/11763
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
Tested-by: Noel Grandin <noelgrandin@gmail.com>
2014-10-03 05:25:41 +00:00
059f5a95b2 loplugin: cstylecast
Change-Id: Ic7c9c978baf5602a508aff5976220a02ed03a680
2014-10-02 07:37:19 +02:00
fa537124ac loplugin: cstylecast
Change-Id: Ie3d13eccdf444d569cbe40befb45eb86941160b6
2014-10-01 13:08:41 +02:00
fc04f76336 fdo#82577: Handle Time
Put the TOOLS Time class in the tools namespace. Avoids clash with the X11
Time typedef.

Change-Id: Iac57d5aef35e81ace1ee0d5e6d76cb278f8ad866
Reviewed-on: https://gerrit.libreoffice.org/11684
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
Tested-by: Noel Grandin <noelgrandin@gmail.com>
2014-10-01 07:34:23 +00:00
4e26b91568 remove unnecessary casts in misc calls to SvStream.Write*
left over from our conversion of the SvStream output operators
to more specific methods

Change-Id: Ib80032e8626f5476a89b958f590441994594f4e4
2014-09-26 15:27:18 +02:00
5501c8d222 remove unnecessary casts in calls to SvStream.WriteUInt16
left over from our conversion of the SvStream output operators
to more specific methods

Change-Id: I482ca7abb84613971e7e8f839f7aa67a65cd71ff
2014-09-26 15:26:48 +02:00
827c46e7d7 fdo#82577: Handle Window
Put the VCL Window class in the vcl namespace. Avoids clash with the X11
Window typedef.

Change-Id: Ib1beb7ab4ad75562a42aeb252732a073d25eff1a
2014-09-23 14:11:39 +03:00
234b5de79f vba: calm down bool -> long casting concerns.
Change-Id: Ib32a66d891242701d2f5c55519e5c52a6dd3df3c
2014-09-19 20:15:09 +01:00
01e14011e5 vba: add a different variant of the same compatibility function.
Change-Id: I92bc1dbceea2f10cbb055d97f68b33e575d9be11
2014-09-19 15:31:07 +01:00
19ee058a21 vba: initial impl. of compatibility methods.
Change-Id: Iebc25f1730766e96d2ad6921a8b4d2ea880c63f3
2014-09-19 15:31:06 +01:00
60e78fbb80 fdo#82577: Handle Font
Put the VCL Font class in the vcl namespace. Avoids clash with the X11
Font typedef.

Change-Id: I1a84f7cad8b31697b9860a3418f7dff794ff6537
2014-09-18 08:54:37 +02:00
5bce329040 SfxHint: convert home-grown RTTI to normal C++ RTTI
Also note that I fixed a bug in SvxFontMenuControl::Notify
where the if statement had the check the wrong way around.

Change-Id: I611e8929c65818191e36bd80f2b985820ada4411
Reviewed-on: https://gerrit.libreoffice.org/11147
Reviewed-by: Norbert Thiebaud <nthiebaud@gmail.com>
Tested-by: Norbert Thiebaud <nthiebaud@gmail.com>
2014-09-06 15:47:44 -05:00
37b9ea92ba convert SBX flag bits to type-safe enum
Change-Id: I18d5d6a27f06ee60a5cb3dc393bf05b51bba4817
Reviewed-on: https://gerrit.libreoffice.org/11070
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
Tested-by: Noel Grandin <noelgrandin@gmail.com>
2014-08-26 04:30:03 -05:00
d718c1f65f coverity#1202729 - ensure we have exactly a one dimensional array.
Change-Id: I6db8a2fb48ed7ce134a5c45c590c2ada0e19fc85
2014-08-21 00:39:45 +01:00
ea5ef0a72e Drop unused #includes
Change-Id: I77ca957204bacee95e32a7f2a54c9311002aeef9
2014-07-24 01:06:15 +09:00
dac4ca5f68 new loplugin: externalandnotdefined
Find "missing headers," where a function is declared directly in the
.cxx (as extern) and not defined, and should arguably instead be declared
in an include file.

Change-Id: I6d83ee432b2ab0cd050aec2b27c3658d32ac02a2
2014-07-11 14:12:25 +02:00
eb9b890bc9 DBG_ASSERT->assert when followed by dereference
Change-Id: I9390228721df1b713d8cf2e719854b74d6b639c8
2014-07-06 21:06:06 +01:00
e48a233960 loplugin:unreffun: also warn about redundant redeclarations
Change-Id: I9a812220b58cf6da00d854e65794f7c673ab239d
2014-06-27 15:27:39 +02:00
daa6898578 clang: Dead initialization
Change-Id: Ieae5303e55f21044ef8e91e63c4896696cfad51c
2014-06-26 16:29:15 +01:00
e14abb13dc Use boost::optional to store alias name.
Change-Id: I809b21ea156061a265c0d83d58534df10bc273bc
2014-06-25 15:03:46 -04:00
f8ef1fe95b loplugin:staticcall
Change-Id: I6cd46964c523c9393e9d249fdb43aaa38679fa06
2014-06-13 17:54:23 +02:00
184a00b962 loplugin: inlinesimplememberfunctions
Change-Id: I42119f656ca528286fb25d2d36c0af54b7d04a6b
2014-06-09 10:10:13 +02:00
6a53ea218c Avoid possible memory leaks in case of exceptions
Change-Id: Iad3de981a1c9660b1322315640e531c9891db0bf
2014-05-31 00:35:27 +09:00
a71ae24a23 Avoid possible memory leaks in case of exceptions
Change-Id: Iac63a5d60478e5cd8e2b77c889c7b312d3d15f67
2014-05-29 09:29:15 +09:00
df466d79cb fdo#70474: Random number generation weak with Rnd in BASIC
Just reuse the rng functionality. This improves the randomness.

Initialize seed with system time if no argument for RANDOMIZE is given. As the help text
states: "If Number is omitted, the generator uses the current value of the system timer".

Change-Id: I5fa46e8344b2402dff66a8db2449d43e2ca27d6d
Reviewed-on: https://gerrit.libreoffice.org/9349
Reviewed-by: Thomas Arnhold <thomas@arnhold.org>
Tested-by: Thomas Arnhold <thomas@arnhold.org>
2014-05-17 12:40:58 +00:00
68741d0055 Prefer cppu::UnoType<T>::get() to ::getCppuType((T*)0) part13
Change-Id: Ieecfd7ccb10c75ac639d0ba8e7cb588607097c2a
2014-05-15 22:52:22 +02:00
4aa690c2e4 basic: use prewin.h
Change-Id: I49b797b170b3fd74324eede9d3b6b6ec106e62e4
2014-05-14 17:57:32 +02:00
70e744b215 fdo#43157 Remove OSL_POSTCOND, prefer SAL_WARN_IF
Change-Id: Ia89a2dce799c7ba90bcd19919195bfd2c7a4a180
Signed-off-by: Stephan Bergmann <sbergman@redhat.com>
2014-05-12 11:32:38 +02:00
569ff6727e update_pch: add a bunch of pch files
I had to fix some source files because of macro redefinitions and such stuff.

Small modules like basic have a great win, too:

make basic.clean && time make basic:

                with    w/o
                 pch    pch
accessibility    23s  1m59s
basctl           30s  1m42s
basic            56s  1m35s
comphelper       23s    51s
editeng          48s  2m04s
forms            40s  1m40s
unotools         19s    38s
sd             3m37s  4m33s

Change-Id: Id24cdcddbe2ff64820b42266325c25af1355558f
Reviewed-on: https://gerrit.libreoffice.org/9293
Tested-by: LibreOffice gerrit bot <gerrit@libreoffice.org>
Reviewed-by: Thomas Arnhold <thomas@arnhold.org>
2014-05-09 19:50:42 +00:00
9e436082af dflt -> default
Change-Id: I89f1f5771eb7d96da233a8c7386b906b2a3a9c3e
2014-05-06 07:19:09 +02:00
c79a5f87b1 remove executable bit
Change-Id: I91f6e861f6d0dbea1b57ac73857e0c706b27f681
2014-04-17 15:11:14 +02:00
d2f24e3a31 typo: beause -> because 2014-04-14 12:33:14 +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
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
362d4f0cd4 Explicitly mark overriding destructors as "virtual"
It appears that the C++ standard allows overriding destructors to be marked
"override," but at least some MSVC versions complain about it, so at least make
sure such destructors are explicitly marked "virtual."

Change-Id: I0e1cafa7584fd16ebdce61f569eae2373a71b0a1
2014-04-01 19:22:54 +02:00
0015c9807f Remove unused BASIC CaptureAssertions functionality
...that had originally been introduced to catch DBG_ASSERTs during smoketest,
but since made effectively unused when basing DBG_ASSERT on the sal/log.hxx
functionality, and obsoleted by the ongoing clean-up of using true assert where
appliable.

Change-Id: I2fb4f5d0873d29595b178057f83c1404c0085575
2014-03-31 11:23:24 +02:00
4e3cf9cd8e MSVC helpfully provides warning C4310: cast truncates constant value
Change-Id: I985216d7bade6cbb3a037b07fe44438543d63ba0
2014-03-30 23:08:54 +02:00
ba46f32c80 deploy some asserts to detect truncated STREAM_SEEK_TO_END
Since STREAM_SEEK_TO_END is now 64 bits it could happen that some
existing code uses it in some indirect manner and it gets truncated to
32 bits somewhere (on 32 bit platforms); try to detect that with asserts.

Of course the checked value is now a valid stream position, so
perhaps the checks should eventually be removed.

Change-Id: I4248c00d758220bdc3ee94c7aa7a7bd4c86c57f0
2014-03-30 22:41:48 +02:00
d761d5e219 error: no matching function for call to..
Change-Id: I4792f9deb162c5e7bde16e54a55f80a83eb90b70
2014-03-29 12:08:09 +01:00
655a39d8c0 basic: for PutData()/GetData() actually 32bits should be enough
Change-Id: I3c605a1e5b46d262ff557dac280b15136467b906
2014-03-29 02:03:07 +01: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
567ef6d578 Second batch of adding SAL_OVERRIDE to overriding function declarations
...mostly done with a rewriting Clang plugin, with just some manual tweaking
necessary to fix poor macro usage.

Change-Id: Ie656f9d653fc716f72ac175925272696d509038f
2014-03-27 18:12:18 +01:00
f288d7dcbd basic: sal_Bool->bool
Change-Id: Id4952b6f97f9e8f917fea5651dee91499d109e48
2014-03-27 13:45:08 +02:00
70cc2b191b First batch of adding SAL_OVERRRIDE to overriding function declarations
...mostly done with a rewriting Clang plugin, with just some manual tweaking
necessary to fix poor macro usage.

Change-Id: I71fa20213e86be10de332ece0aa273239df7b61a
2014-03-26 16:39:26 +01:00
86088dda6e osl_setDetailedDebugMessageFunc is effectively doing nothing
...since the osl/diagnose.h macros got rebased onto sal/log.hxx, so remove the
corresponding tools/debug.h functionality.

Change-Id: Ife4b5b1a2608230d0dbfc3fa8852243c89ed292f
2014-03-25 16:17:09 +01:00