Date: prev next · Thread: first prev next last
2010 Archives by date, by thread · List index


On Wed, 2010-10-06 at 21:23 +0200, Jacek Wolszczak wrote:
Hi,

A patch replacing some DBG_ASSERT with OSL_ASSERT in writer folder, with
some DE->EN translations. Expect more to come.

a) Little stray "H" near the end of the patch, so I removed that
b) OSL_ASSERT takes only one argument, the test condition, and
DBG_ASSERT takes two, the text condition and some assert text. For those
two argument ones the member of the OSL_ family that fits as easiest
replacement is OSL_ENSURE. A quick search and replace of OSL_ASSERT to
OSL_ENSURE in the patch was sufficient.
c) Sometimes need to explicitly add #include <osl/diagnose.h> to pull
the defines in. 

Final result then looks good to me, Committed and pushed.

Just a side question. If I come across something like:

#if OSL_DEBUG_LEVEL > 1
        OSL_ASSERT(aStyles.GetEntryCount() > 0, "Sm : no styles
available");
#endif

can I replace it with since the OSL family of macros are enabled when
you build with debug ( --enable-debug configure option ) : ??

Remove the "#if OSL_DEBUG_LEVEL > 1" "#endif" lines ?, I'd say leave
them because there are (potentially) different debugging levels, and the
above only kicks in at level 2 and above, and not level 1.

This is the original idea for the different OSL_DEBUG_LEVELs
http://www.openoffice.org/servlets/ReadMsg?list=interface-discuss&msgNo=330

In sal/inc/osl/diagnose.h OSL_ASSERT forwards to _OSL_ASSERT, and
_OSL_ASSERT is enabled when OSL_DEBUG_LEVEL is > 0

--enable-debug sets the "debug" env variable (in set_soenv) to "true",
and in solenv/inc/settings.mk you can see where OSL_DEBUG_LEVEL gets
defined, and it defaults to 0 for normal builds, and defaults to 2 for
"debugging" (i.e. --enable-debug)

But there is support for OSL_DEBUG_LEVEL=1 as a half-way house, and the
above assert is set to not be checked for that OSL_DEBUG_LEVEL=1 level
(e.g. dmake/build dbglevel=1).

C.


Context


Privacy Policy | Impressum (Legal Info) | Copyright information: Unless otherwise specified, all text and images on this website are licensed under the Creative Commons Attribution-Share Alike 3.0 License. This does not include the source code of LibreOffice, which is licensed under the Mozilla Public License (MPLv2). "LibreOffice" and "The Document Foundation" are registered trademarks of their corresponding registered owners or are in actual use as trademarks in one or more countries. Their respective logos and icons are also subject to international copyright laws. Use thereof is explained in our trademark policy.