From e7611d3ef0b9ab2e00f485030234dea3a58c7aa4 Mon Sep 17 00:00:00 2001 From: James Le Cuirot Date: Sat, 16 May 2020 20:07:02 +0100 Subject: [PATCH] Fix debug build and rework Exceptions includes logic Commit 3ddf92058392 broke the debug build. HAVE_EXECINFO_H is never defined by the build system so this header is never included, even when it is needed by the debug code. The right way to fix this is only to include these headers when debug is actually enabled. This does mean that the debug build is still broken under musl but fixing that would require using libunwind instead. --- cegui/src/Exceptions.cpp | 16 ++++------------ 1 file changed, 4 insertions(+), 12 deletions(-) diff --git a/cegui/src/Exceptions.cpp b/cegui/src/Exceptions.cpp index 138081a..934989e 100644 --- a/cegui/src/Exceptions.cpp +++ b/cegui/src/Exceptions.cpp @@ -33,12 +33,13 @@ #if defined( __WIN32__ ) || defined( _WIN32) # include +#elif defined(__ANDROID__) +# include #endif +#if defined(_DEBUG) || defined(DEBUG) #if defined(_MSC_VER) # include -#elif defined(__ANDROID__) -# include #elif (defined(__linux__) && !defined(__ANDROID__)) \ || defined(__APPLE__) || defined(__FreeBSD__) || defined(__NetBSD__) \ || defined(__HAIKU__) @@ -47,6 +48,7 @@ # include # include #endif +#endif // Start of CEGUI namespace section namespace CEGUI @@ -57,14 +59,6 @@ bool Exception::d_stdErrEnabled(true); //----------------------------------------------------------------------------// static void dumpBacktrace(size_t frames) { - -#if defined(__ANDROID__) - - // Not implemented yet. - CEGUI_UNUSED(frames); - -#else - #if defined(_DEBUG) || defined(DEBUG) #if defined(_MSC_VER) SymSetOptions(SYMOPT_DEFERRED_LOADS | SYMOPT_INCLUDE_32BIT_MODULES); @@ -187,8 +181,6 @@ static void dumpBacktrace(size_t frames) CEGUI_UNUSED(frames); -#endif - #endif } -- 2.26.2