Commit Graph
120 Commits
Author SHA1 Message Date
Stephan Bergmann 91ba9654ba Move tools/diagnose_ex.h to comphelper/diagnose_ex.hxx
...so that its TOOLS_WARN_EXCEPTION can be used in
comphelper/source/misc/logging.cxx in a follow-up commit.  (And while at it,
rename from diangose_ex.h to the more appropriate diagnose_ex.hxx.  The
comphelper module is sufficiently low-level for this immediate use case, so use
that at least for now; o3tl might be even more suitable but doesn't have a
Library until now.  Also, for the immediate use case it would have sufficed to
only break DbgGetCaughtException, exceptionToString, TOOLS_WARN_EXCEPTION,
TOOLS_WARN_EXCEPTION_IF, and TOOLS_INFO_EXCEPTION out of
include/tools/diagnose_ex.h into an additional new
include/comphelper/diagnose_ex.hxx, but its probably easier overall to just move
the complete include file as is.)

Change-Id: I9f3222d4ccf1a9ac29d7eb9ba1530d53e2affaee
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/138451
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2022-08-18 17:10:19 +02:00
Gabor Kelemen 52ef78f492 Recheck modules t* with IWYU
See tdf#42949 for motivation

Change-Id: I109fa07d52721fd10354de07a2ed995ffa2f27c5
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/132369
Tested-by: Jenkins
Reviewed-by: Thorsten Behrens <thorsten.behrens@allotropia.de>
2022-04-02 23:32:08 +02:00
Stephan Bergmann 162017cd9a Improve DBG_UNHANDLED_EXCEPTION output a bit
For example, in de3898aecb "Add missing test
dependency" it would have output

> warn:svx:680849:680849:svx/source/unodraw/unoshape.cxx:1779: DBG_UNHANDLED_EXCEPTION in setPropertyValues exception: com.sun.star.beans.UnknownPropertyException message: "URL at svx/source/unodraw/unoshape.cxx:1600"

rather than

> warn:svx:680849:680849:svx/source/unodraw/unoshape.cxx:1779: DBG_UNHANDLED_EXCEPTION in setPropertyValues exception: com.sun.star.beans.UnknownPropertyException message: URL svx/source/unodraw/unoshape.cxx:1600

making it slightly clearer that what follows "URL" is not the value of that URL
but rather the source location where the exception was thrown.

Change-Id: Ia3abd232fce3d95a8b66ff4ed5bab2fcc248df2f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128788
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2022-01-23 09:50:33 +01:00
Noel Grandin 75997f13ee no need to create temporaries when appending number to O[U]StringBuffer
Change-Id: I36d82423b5f75010552696a66cec7e53ee265ce4
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/114395
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2021-04-22 21:42:14 +02:00
Miklos Vajna fc761cb2cc tools: define DbgTestSolarMutex() unconditionally
See the discussion at <https://gerrit.libreoffice.org/#/c/58170/>, and
this came up on IRC today again.

The above change broke the invariant that you can mix product and debug
(but not dbgutil) builds. Restore this, without mandating dbgutil for
the solar mutex assert code, which is useful for plain debug builds as
well.

Change-Id: I1f8bdb114b129fc4f39f186ba917e35e346a16b5
Reviewed-on: https://gerrit.libreoffice.org/85369
Tested-by: Jenkins
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
2019-12-18 15:04:12 +01:00
Stephan Bergmann f853ec317f Extend loplugin:external to warn about classes
...following up on 314f15bff0 "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-22 12:57:32 +01:00
Julien Nabet c5f0e89ee5 tdf#128862: fix HSQLDB odb-files with apostrophe crash
see bt:
0  0x00007ffff209866a in std::type_info::name() const (this=0x0) at /usr/include/c++/9/typeinfo:100
1  0x00007ffff20966e1 in exceptionToStringImpl(rtl::OStringBuffer&, com::sun::star::uno::Any const&)
    (sMessage="DBG_UNHANDLED_EXCEPTION in bool connectivity::hsqldb::OHsqlConnection::impl_isTextTable_nothrow(const rtl::OUString&) exception: com.sun.star.sdbc.SQLException message: Unexpected token: S in statemen"..., caught=
  uno::Any("com.sun.star.sdbc.SQLException": {<com::sun::star::uno::Exception> = {Message = "Unexpected token: S in statement [s]", Context = uno::Reference to (com::sun::star::uno::XInterface *) 0x555559269238}, SQLState = "37000", ErrorCode = -11, NextException = uno::Any(void)})) at /home/julien/lo/libreoffice/tools/source/debug/debug.cxx:113
2  0x00007ffff209855d in DbgUnhandledException(com::sun::star::uno::Any const&, char const*, char const*, char const*, char const*) (caught=
  uno::Any("com.sun.star.sdbc.SQLException": {<com::sun::star::uno::Exception> = {Message = "Unexpected token: S in statement [s]", Context = uno::Reference to (com::sun::star::uno::XInterface *) 0x555559269238}, SQLState = "37000", ErrorCode = -11, NextException = uno::Any(void)}), currentFunction=0x7fffdb5ca340 "bool connectivity::hsqldb::OHsqlConnection::impl_isTextTable_nothrow(const rtl::OUString&)", fileAndLineNo=0x7fffdb5ca2e8 "/home/julien/lo/libreoffice/connectivity/source/drivers/hsqldb/HConnection.cxx:301: ", area=0x7fffdb5c9f49 "connectivity.hsqldb", explanatory=0x0)
    at /home/julien/lo/libreoffice/tools/source/debug/debug.cxx:418
3  0x00007fffdb58a16a in connectivity::hsqldb::OHsqlConnection::impl_isTextTable_nothrow(rtl::OUString const&) (this=0x555558a43de0, _rTableName="William Kidwell's Address Book")
    at /home/julien/lo/libreoffice/connectivity/source/drivers/hsqldb/HConnection.cxx:301
https://bugs.documentfoundation.org/attachment.cgi?id=155952

Change-Id: I2bc744164b1470d8f09bcb126b02e48af180e886
Reviewed-on: https://gerrit.libreoffice.org/83245
Tested-by: Jenkins
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
2019-11-21 22:16:21 +01:00
Noel Grandin 48101a1a0d size some stringbuffer to prevent re-alloc
I started with 32 and kept doubling the size until the site
did not need re-alloc, but clamped it at 512.

Change-Id: I55fe36b31cd3d40f86e5729337a927cf920f2af6
Reviewed-on: https://gerrit.libreoffice.org/81960
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-11-03 17:11:32 +01:00
Noel Grandin e276c81264 size some stringbuffer to prevent re-alloc
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-26 12:38:33 +02:00
Noel Grandin 231e16d909 loplugin:redundantpointerops simplify *p.get()
Change-Id: I12517651fb3f777fd08e384992bb3e84b340ad85
Reviewed-on: https://gerrit.libreoffice.org/80382
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-10-08 08:26:23 +02:00
Noel Grandin 9e5b43ff37 loplugin:stringadd in tools..unotools
Change-Id: I441a5ccef6adc8be8029178e304ff3044e812e2a
Reviewed-on: https://gerrit.libreoffice.org/79986
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-10-02 08:01:38 +02:00
Noel Grandin 70accc2904 loplugin:logexceptionnicely in toolkit..unoxml
Change-Id: I0a3126545f9ef98640f6dd166290e9b9e91b8355
Reviewed-on: https://gerrit.libreoffice.org/74244
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-06-18 10:31:43 +02:00
Stephan Bergmann d3581eb79e AddressSanitizer: alloc-dealloc-mismatch (malloc vs operator delete)
__cxa_demangle uses malloc/free for memory management, see
<http://itanium-cxx-abi.github.io/cxx-abi/abi.html#demangler>

Change-Id: I57f8465d1c70fbef4537068fd3aefc52295e1c63
Reviewed-on: https://gerrit.libreoffice.org/71942
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2019-05-08 13:20:06 +02:00
Noel Grandin 5e38da867f fix leak in exceptionToString
need to release the pointer we get back from demangle

Change-Id: I74f1065006fe0cd5da79d0ec5caa514d216be9a1
Reviewed-on: https://gerrit.libreoffice.org/71859
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-05-07 08:31:35 +02:00
Gabor Kelemen 83abdf803a tdf#42949 Fix IWYU warnings in tools/
Found with bin/find-unneeded-includes
Only removal proposals are dealt with here.

Change-Id: I47974f5c24819eb60e6724f42d51bb206dc26d21
Reviewed-on: https://gerrit.libreoffice.org/71557
Tested-by: Jenkins
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
2019-04-30 15:02:42 +02:00
Noel Grandin 183debd7e0 pretty up logging of exceptions
Add exceptionToString() and getCaughtExceptionAsString() methods in
tools.

Use the new methods in DbgUnhandledException()

Add special-case case code for most of the exceptions that contain extra
fields, so all of the relevant data ends up in the log

Change-Id: I376f6549b4d7bd480202f8bff17a454657c75ece
Reviewed-on: https://gerrit.libreoffice.org/67857
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-02-19 09:39:48 +01:00
Noel Grandin 9cceba9a92 make DBG_TESTSOLARMUTEX available in assert builds
where our QA people are more likely to trigger it

Change-Id: I4ce7c8c72e7e21f2296c0f9cc9f019aaef32ed0b
Reviewed-on: https://gerrit.libreoffice.org/58170
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-07-30 08:58:59 +02:00
Noel Grandin 8dcbfb8c70 demangle context type name in DBG_UNHANDLED_EXCEPTION
Change-Id: I59591d0209ddf2bcf6e57a78dc7999d773b73ae3
Reviewed-on: https://gerrit.libreoffice.org/54805
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-05-26 15:51:07 +02:00
Noel Grandin e075ee967d give DBG_UNHANDLED_EXCEPTION_WHEN an area parameter
and rename it to DBG_UNHANDLED_EXCEPTION, to make it more like
the SAL_WARN-type macros.

Use some macro magic to deal with different numbers of arguments.

Update the sallogareas plugin to check the area parameter of
DBG_UNHANDLED_EXCEPTION.

Change-Id: Ie790223244c3484f41acb3679c043fb9b438e7c4
Reviewed-on: https://gerrit.libreoffice.org/52073
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-04-02 08:58:08 +02:00
Jochen Nitschke 959496794c cleanup osl/diagnose.h includes
with command
> git grep -l osl/diagnose.h *.cxx |
  xargs grep -L -w 'OSL_\w*' |
  xargs sed -i '/#include *\(<\|\"\)osl\/diagnose.h\(>\|\"\).*/d'

headers need more work

Change-Id: I906519ebbd47a04703b4fa5943b2f7abea7a97ab
Reviewed-on: https://gerrit.libreoffice.org/37350
Tested-by: Jochen Nitschke <j.nitschke+logerrit@ok.de>
Reviewed-by: Michael Stahl <mstahl@redhat.com>
2017-05-09 15:41:46 +02:00
Eike Rathke 6c60aa313c introduce DBG_UNHANDLED_EXCEPTION_WHEN for calls with an explanatory message
Change-Id: Ic80f2ed2c0fdff20d1ee1968bec2840bf914fb5e
2016-11-25 16:26:42 +01:00
Noel Grandin 27ecc40785 improve formatting of DBG_UNHANDLED_EXCEPTION message
put more useful info on the same line, and indent following lines, to
visually separate them from new log messages.

Change-Id: Ieda71aebf68420a0521ce98c621b0236d533bc53
2016-06-13 10:30:28 +02:00
Noel Grandin 6ab52cbb0e reduce "no DbgTestSolarMutex function set" warning
Change-Id: I68c67e77a2759c8542dd4a44a78a9fcf8aa7dcc0
Reviewed-on: https://gerrit.libreoffice.org/26056
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
Tested-by: Noel Grandin <noelgrandin@gmail.com>
2016-06-09 06:48:35 +00:00
Stephan Bergmann 1c4f33b5d8 loplugin:nullptr (automatic rewrite)
Change-Id: Ia5acfb564f913d52cd25b5d64d06b5280b94cb72
2015-11-10 10:31:54 +01:00
Noel Grandin a3db4959b0 com::sun::star->css in tools/ and ucb/
Change-Id: I695ff721efd63b8ca0dd3c61ba5a4fef2c43cde6
Reviewed-on: https://gerrit.libreoffice.org/19854
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
Tested-by: Noel Grandin <noelgrandin@gmail.com>
2015-11-09 11:14:44 +00:00
Tor Lillqvist 8ab005af96 Avoid pain when using selective debuginfo
Compile in the DbgUnhandledException function always.

Change-Id: I302954598e599e8db71967974b18ade54ca2de13
2015-09-08 19:37:58 +03:00
Tor Lillqvist 139b32b84c Bin the fairly useless DbgDialog stuff and handle fallout
See (short) discussion on the mailing list, "How was it again, is the
DbgDialog useful?".

Change-Id: Ibde1eb13f16edf94f1f7aebd0befd1b0b171d5c4
2015-08-26 10:33:30 +03:00
Stephan Bergmann 8ca53be757 loplugin:cstylecast: deal with remaining pointer casts
Change-Id: Iedee28da32a4333a414e06877f87851345bb4e9b
2015-06-08 16:29:11 +02:00
Stephan Bergmann 9720e8e5ef Some loplugin:revisibility clean-up
Stumbled across such redundant visibility re-specifications when looking at the
odd case of cppu_unsatisfied_iquery_msg declared CPPU_DLLPUBLIC in
cppu/source/cppu/cppu_opt.cxx and used in inline code in
include/com/sun/star/uno/Reference.hxx with only a declaration lacking
CPPU_DLLPUBLIC visible, and wondering how that actually works on Windows.

However, this plugin is probably not worth it being run all the time, so
committing it to compilerplugins/clang/store/.

Change-Id: Ibc3c4e7499213de1b419ce7eb85455cb832e1510
2015-01-05 13:10:48 +01:00
Stephan Bergmann 47cd375d88 Revert "Work around a Clang trunk (towards 3.6) -Werror,-Wunused-value"
This reverts commit 146bd125a0,
Clang's r224465 does not look really useful the way it is, so work around
that directly in Clang for now.
2014-12-18 11:01:54 +01:00
Stephan Bergmann 146bd125a0 Work around a Clang trunk (towards 3.6) -Werror,-Wunused-value
Change-Id: I3ee32c5bd379bb851f8f255faa93d96227dcff84
2014-12-18 10:19:14 +01:00
David Ostrovsky c2a93a21a5 long is 32 bit on Windows x86_64 platform
So that this is always wrong (on this platform) to write:

reinterpret_cast<foo>(reinterpret_cast<long>(bar))

it should be:
renterpret_cast<foo>(reinterpret_cast<sal_uIntPtr>(bar))

Change-Id: Ia286246ee1616988f755c2d2054b26efacc51af0
Reviewed-on: https://gerrit.libreoffice.org/13366
Reviewed-by: Michael Stahl <mstahl@redhat.com>
Tested-by: Michael Stahl <mstahl@redhat.com>
2014-12-10 21:35:43 +00:00
Noel Grandin 23e1fc277d loplugin: cstylecast, update PTR_CAST macro to use static_cast
I introduce a template method into the PTR_CAST machinery
to maintain constness.
There is now a FIXME in sd/../docshell.cxx because I needed
to use a dynamic_cast there to work around the games it appears
to be playing with OLE in-place activation.

Signed-off-by: Stephan Bergmann <sbergman@redhat.com>,
dropping the GCC-extension, unnecessary use of typeof from tools/rtti.hxx

Change-Id: Iba5ace1aa27e02b34fcc91af1e658c43371afd03
2014-09-23 17:27:47 +02:00
Noel Grandin 34cabe837d loplugin:unreffun
Change-Id: Idc0f3ef53f48b2e77e4cecbcdbbc44a115c6ec2e
2014-07-14 13:27:30 +02:00
Thomas Arnhold 8449225508 fix-includes.pl: tools
Change-Id: I66b3dc79998de018eae1c7eff8ce23f95e3c3f33
2014-05-22 12:50:45 +02:00
Stephan Bergmann 747631f26c Remove now unused obsolete tools/debug.hxx functionality
Change-Id: I1bc585af8f0189dfa219bd42a5f09871a006c6ea
2014-03-31 13:33:59 +02:00
Stephan Bergmann f26b981aa2 Remove now unused DBG_CTOR etc. feature
Change-Id: Id5e3191ea1a505bd7d46af355edb99e184b5fcb1
2014-03-28 17:26:09 +01:00
Stephan Bergmann cdb473b00a Remove now unused tools/debug.hxx profiling functionality
Change-Id: I13adca8c2f929c8a9226b26ef57b26363dfdf0b3
2014-03-25 18:49:18 +01:00
Stephan Bergmann 2ab3bae2cf Reduce some functions to local
Change-Id: Ia2d7eaaa1381fe46839b0d52a91bdc3a439fa418
2014-03-25 18:49:17 +01:00
Stephan Bergmann 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
Stephan Bergmann ff1a592a1f Remove unused DBG_FUNC_* slots
Change-Id: Ief6661ed4bb57546014deef5b10d20fc3a4894fe
2014-03-25 16:17:09 +01:00
Stephan Bergmann 3afc276001 DBG_OUT_WARNING is unused
...and thus DgbData::nWarningOut is unused, too.

Change-Id: I388d2be7dafbfdc173a731dc7daf1c8b5efcd61d
2014-03-25 16:17:06 +01:00
Stephan Bergmann a61f3161a4 At least warn when DBG_TESTSOLARMUTEX has not been set up
Change-Id: I5ae5318685ffe45bd9616d06eea21a93585715f2
2014-02-03 16:05:09 +01:00
Tor Lillqvist 38b4030703 Avoid warnings: unused parameter
Change-Id: I92fd33e020772eac735f133f467207da9635e9b4
2014-01-16 23:22:44 +02:00
Bjoern Michaelsen 43bfe1ecb8 always build an empty DbgUnhandledException, to allow debug=t builds without --enable-dbgutils 2014-01-16 21:45:17 +01:00
Stephan Bergmann 3abb11b346 Use bool
Change-Id: I7b48d8b9e162f9e4447bfcfcc0bbd1158bd35f5b
2014-01-10 17:11:49 +01:00
Tor Lillqvist a7724966ab Bin comments that claim to say why some header is included
They are practically always useless, often misleading or obsolete.

Change-Id: I2d32182a31349c9fb3b982498fd22d93e84c0c0c
2013-10-22 16:56:28 +03:00
Stephan Bergmann f58ee783ee Improve ErrorCodeIOException messages
...and clean up some includes.

Change-Id: Ia5843cd38f967722d7173a6c87fba26064e3ffd6
2013-10-09 21:02:11 +02:00
Luboš Luňák 64b993e046 finish deprecation of O(U)String::valueOf()
Compiler plugin to replace with matching number(), boolean() or OUString ctor,
ran it, few manual tweaks, mark as really deprecated.

Change-Id: I4a79bdbcf4c460d21e73b635d2bd3725c22876b2
2013-08-21 15:10:35 +02:00
Norbert Thiebaud 710f41b7ae Clean String and sal_Bool in tools
Change-Id: I6a92196f33d7a5278c7dcc426112e9c56d582655
Reviewed-on: https://gerrit.libreoffice.org/4627
Reviewed-by: Norbert Thiebaud <nthiebaud@gmail.com>
Tested-by: Norbert Thiebaud <nthiebaud@gmail.com>
2013-06-30 04:58:49 +00:00