diff options
author | ferrieux <ferrieux@users.sourceforge.net> | 2012-04-24 08:55:55 (GMT) |
---|---|---|
committer | ferrieux <ferrieux@users.sourceforge.net> | 2012-04-24 08:55:55 (GMT) |
commit | ed76f23a67ff725a3ef859435e72a1d809d53f8e (patch) | |
tree | 06aec4c10110301564a8a95d3a5080f61c8f5513 /generic/tclPanic.c | |
parent | 3ca91bcffca105a9023965df4a51a84ece77d737 (diff) | |
parent | cc79d413c959197709155dc84b0680e37c20400e (diff) | |
download | tcl-ed76f23a67ff725a3ef859435e72a1d809d53f8e.zip tcl-ed76f23a67ff725a3ef859435e72a1d809d53f8e.tar.gz tcl-ed76f23a67ff725a3ef859435e72a1d809d53f8e.tar.bz2 |
merge trunk
Diffstat (limited to 'generic/tclPanic.c')
-rw-r--r-- | generic/tclPanic.c | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/generic/tclPanic.c b/generic/tclPanic.c index 2cb8aff..84a9136 100644 --- a/generic/tclPanic.c +++ b/generic/tclPanic.c @@ -14,7 +14,7 @@ */ #include "tclInt.h" -#ifdef _WIN32 +#if defined(_WIN32) || defined(__CYGWIN__) MODULE_SCOPE void tclWinDebugPanic(const char *format, ...); #endif @@ -23,7 +23,11 @@ * procedure. */ +#if defined(__CYGWIN__) +static Tcl_PanicProc *panicProc = tclWinDebugPanic; +#else static Tcl_PanicProc *panicProc = NULL; +#endif /* *---------------------------------------------------------------------- @@ -45,7 +49,7 @@ void Tcl_SetPanicProc( Tcl_PanicProc *proc) { -#ifdef _WIN32 +#if defined(_WIN32) /* tclWinDebugPanic only installs if there is no panicProc yet. */ if ((proc != tclWinDebugPanic) || (panicProc == NULL)) #endif @@ -100,7 +104,7 @@ Tcl_PanicVA( fflush(stderr); } /* In case the users panic proc does not abort, we do it here */ -#ifdef _WIN32 +#if defined(_WIN32) || defined(__CYGWIN__) # if defined(__GNUC__) __builtin_trap(); # elif defined(_WIN64) @@ -110,6 +114,8 @@ Tcl_PanicVA( # else DebugBreak(); # endif +#endif +#if defined(_WIN32) ExitProcess(1); #else abort(); |