From b7a2402da68accb283314bc7929d037e1a115da9 Mon Sep 17 00:00:00 2001 From: Campbell Barton Date: Fri, 18 Jan 2013 21:05:37 +0000 Subject: [PATCH] fix for building with BSD & MinGW. --- source/creator/creator.c | 32 ++++++++++++++++++++++++-------- 1 file changed, 24 insertions(+), 8 deletions(-) diff --git a/source/creator/creator.c b/source/creator/creator.c index 6cee9b09a52..624b1148072 100644 --- a/source/creator/creator.c +++ b/source/creator/creator.c @@ -53,10 +53,10 @@ #endif /* for backtrace */ -#ifdef WIN32 -# include -#else +#if defined(__linux__) || defined(__APPLE__) # include +#elif defined(_MSV_VER) +# include #endif #include @@ -448,10 +448,12 @@ static int set_fpe(int UNUSED(argc), const char **UNUSED(argv), void *UNUSED(dat return 0; } +#if defined(__linux__) || defined(__APPLE__) + +/* Unix */ static void blender_crash_handler_backtrace(FILE *fp) { #define SIZE 100 -#ifndef WIN32 void *buffer[SIZE]; int nptrs; char **strings; @@ -468,10 +470,17 @@ static void blender_crash_handler_backtrace(FILE *fp) } free(strings); -#else /* WIN32 */ +#undef SIZE +} + +#elif defined(_MSV_VER) + +static void blender_crash_handler_backtrace(FILE *fp) +{ (void)fp; + #if 0 - #define MAXSYMBOL 256 +#define MAXSYMBOL 256 unsigned short i; void *stack[SIZE]; unsigned short nframes; @@ -496,10 +505,17 @@ static void blender_crash_handler_backtrace(FILE *fp) MEM_freeN(symbolinfo); #endif -#endif -#undef SIZE } +#else /* non msvc/osx/linux */ + +static void blender_crash_handler_backtrace(FILE *fp) +{ + (void)fp; +} + +#endif + static void blender_crash_handler(int signum) {