X-Git-Url: https://git.m6w6.name/?a=blobdiff_plain;f=clients%2Fms_sigsegv.c;h=2cdd3017d8ec49c272ca019e59437943cbe1adce;hb=dd175adb52ed8a5ab9ca125060f50b6185c60047;hp=69f038f9328954ae4fd9c1535d9109d5c895c839;hpb=a7a011c2ea4a63368b3a96a332da00820ed402cb;p=m6w6%2Flibmemcached diff --git a/clients/ms_sigsegv.c b/clients/ms_sigsegv.c index 69f038f9..2cdd3017 100644 --- a/clients/ms_sigsegv.c +++ b/clients/ms_sigsegv.c @@ -8,6 +8,9 @@ * http://www.schoonerinfotech.com/ * */ + +#include "config.h" + #include #include #include @@ -20,8 +23,7 @@ #include "ms_memslap.h" #include "ms_setting.h" -#define NO_CPP_DEMANGLE -#ifndef NO_CPP_DEMANGLE +#if defined(__cplusplus) && defined(HAVE_ABI_CXA_DEMANGLE) # include #endif @@ -83,7 +85,7 @@ static void ms_signal_segv(int signum, siginfo_t *info, void *ptr) break; const char *symname= dlinfo.dli_sname; -# ifndef NO_CPP_DEMANGLE +# if defined(HAVE_ABI_CXA_DEMANGLE) && defined(__cplusplus) int status; char *tmp= __cxa_demangle(symname, NULL, 0, &status); @@ -98,7 +100,7 @@ static void ms_signal_segv(int signum, siginfo_t *info, void *ptr) (unsigned)(ip - dlinfo.dli_saddr), dlinfo.dli_fname); -# ifndef NO_CPP_DEMANGLE +# if defined(HAVE_ABI_CXA_DEMANGLE) && defined(__cplusplus) if (tmp) free(tmp); # endif