summaryrefslogtreecommitdiff
path: root/ptw32_throw.c
diff options
context:
space:
mode:
authorrpj <rpj>2008-06-06 00:23:20 +0000
committerrpj <rpj>2008-06-06 00:23:20 +0000
commitc99326aa8dc2797567ec48ca18ab413ec2fd4fe5 (patch)
tree1c10d3834640ac3342de7c363c476394b9491523 /ptw32_throw.c
parent8bee08a26f41b39ce14cae9cdab486d3265349f7 (diff)
''
Diffstat (limited to 'ptw32_throw.c')
-rw-r--r--ptw32_throw.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/ptw32_throw.c b/ptw32_throw.c
index 493f4e4..b276119 100644
--- a/ptw32_throw.c
+++ b/ptw32_throw.c
@@ -73,6 +73,7 @@ ptw32_throw (DWORD exception)
* explicit thread exit here after cleaning up POSIX
* residue (i.e. cleanup handlers, POSIX thread handle etc).
*/
+#if ! defined (__MINGW32__) || defined (__MSVCRT__) || defined (__DMC__)
unsigned exitCode = 0;
switch (exception)
@@ -81,9 +82,13 @@ ptw32_throw (DWORD exception)
exitCode = (unsigned) PTHREAD_CANCELED;
break;
case PTW32_EPS_EXIT:
- exitCode = (unsigned) sp->exitStatus;;
+ if (NULL != sp)
+ {
+ exitCode = (unsigned) sp->exitStatus;
+ }
break;
}
+#endif
#if defined(PTW32_STATIC_LIB)