On Fri, Nov 18, 2011 at 03:25:16PM +0100, Stephan Bergmann <sbergman@redhat.com> wrote:
#define OSL_DEBUG_ONLY(s) _OSL_DEBUG_ONLY(s)
-#define OSL_TRACE _OSL_TRACE
-#define OSL_ASSERT(c) _OSL_ENSURE(c, OSL_THIS_FILE, __LINE__, 0)
-#define OSL_ENSURE(c, m) _OSL_ENSURE(c, OSL_THIS_FILE, __LINE__, m)
-#define OSL_FAIL(m) _OSL_ENSURE(0, OSL_THIS_FILE, __LINE__, m)
+#define OSL_TRACE(...) SAL_INFO("legacy.osl", __VA_ARGS__)
+#define OSL_ASSERT(c) SAL_WARN_IF(!(c), "legacy.osl", "OSL_ASSERT")
+#define OSL_ENSURE(c, m) SAL_WARN_IF(!(c), "legacy.osl", "%s", m)
+#define OSL_FAIL(m) SAL_WARN_IF(sal_True, "legacy.osl", "%s", m)
Hi Stephan, These changes cause that without an export SAL_LOG="+INFO" former OSL_TRACE() messages do not show up on the console, even with dbglevel=2. I like that SAL_LOG can now filter SAL_INFO messages, but are you sure it's a good idea to disable them all by default with dbglevel=2, instead of enabling them by default (when SAL_LOG is not set), like it was before? IOW, is the attached patch OK? Thanks.
diff --git a/sal/osl/all/log.cxx b/sal/osl/all/log.cxx
index be45cf6..9493715 100644
--- a/sal/osl/all/log.cxx
+++ b/sal/osl/all/log.cxx
@@ -84,7 +84,11 @@ bool report(sal_detail_LogLevel level, char const * area) {
assert(area != 0);
char const * env = std::getenv("SAL_LOG");
if (env == 0) {
+#if OSL_DEBUG_LEVEL > 1
+ env = "+INFO+WARN";
+#else
env = "+WARN";
+#endif
}
std::size_t areaLen = std::strlen(area);
enum Sense { POSITIVE = 0, NEGATIVE = 1 };
Attachment:
pgp5_Xyx2J8RO.pgp
Description: PGP signature