From 2cb247a12d682d7cda0483570b38b4469c360a94 Mon Sep 17 00:00:00 2001 From: Noel Grandin Date: Fri, 7 Jun 2013 14:44:48 +0200 Subject: [PATCH] fix file and lineno info for DBG_UNHANDLED_EXCEPTION which I broke in commit 863d38fbfa4fb4861e476828c46410602100919e "move DBG_UNHANDLED_EXCEPTION out of line" Change-Id: Ic30e985cc356d81013ced1ce74ec6c78469d9882 --- include/tools/diagnose_ex.h | 4 ++-- tools/source/debug/debug.cxx | 7 +++++-- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/include/tools/diagnose_ex.h b/include/tools/diagnose_ex.h index 4c271939b643..50a400d39313 100644 --- a/include/tools/diagnose_ex.h +++ b/include/tools/diagnose_ex.h @@ -42,7 +42,7 @@ #include #include - TOOLS_DLLPUBLIC void DbgUnhandledException(const ::com::sun::star::uno::Any& caughtException, const char* currentFunction); + TOOLS_DLLPUBLIC void DbgUnhandledException(const ::com::sun::star::uno::Any& caughtException, const char* currentFunction, const char* fileAndLineNo); /** reports a caught UNO exception via OSL diagnostics @@ -50,7 +50,7 @@ handling is not correct .... */ #define DBG_UNHANDLED_EXCEPTION() \ - DbgUnhandledException( ::cppu::getCaughtException(), BOOST_CURRENT_FUNCTION); + DbgUnhandledException( ::cppu::getCaughtException(), BOOST_CURRENT_FUNCTION, SAL_DETAIL_WHERE); #else // OSL_DEBUG_LEVEL #define DBG_UNHANDLED_EXCEPTION() diff --git a/tools/source/debug/debug.cxx b/tools/source/debug/debug.cxx index 3f950ca8dd54..49da3089805f 100644 --- a/tools/source/debug/debug.cxx +++ b/tools/source/debug/debug.cxx @@ -1589,7 +1589,7 @@ void DbgOutf( const sal_Char*, ... ) {} #if OSL_DEBUG_LEVEL > 0 -TOOLS_DLLPUBLIC void DbgUnhandledException(const css::uno::Any & caught, const char* currentFunction) +TOOLS_DLLPUBLIC void DbgUnhandledException(const css::uno::Any & caught, const char* currentFunction, const char* fileAndLineNo) { OString sMessage( "caught an exception!" ); sMessage += "\nin function:"; @@ -1628,7 +1628,10 @@ TOOLS_DLLPUBLIC void DbgUnhandledException(const css::uno::Any & caught, const c } } sMessage += "\n"; - OSL_ENSURE( false, sMessage.getStr() ); + + SAL_DETAIL_LOG_FORMAT( + SAL_DETAIL_ENABLE_LOG_WARN, SAL_DETAIL_LOG_LEVEL_WARN, + "legacy.osl", fileAndLineNo, "%s", sMessage.getStr()); } #endif // OSL_DEBUG_LEVEL