summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorhypnotoad <yoda@etoyoc.com>2014-09-02 20:16:54 (GMT)
committerhypnotoad <yoda@etoyoc.com>2014-09-02 20:16:54 (GMT)
commit808f6393f3fb23ef36d65ffc99a721c5310d8a3d (patch)
tree5d60e6d79139791fc44f42e39b2a62956f2a1ea8
parentc1d5f51fa5956bf12d884ace6301fdef5c12cd39 (diff)
downloadtcl-808f6393f3fb23ef36d65ffc99a721c5310d8a3d.zip
tcl-808f6393f3fb23ef36d65ffc99a721c5310d8a3d.tar.gz
tcl-808f6393f3fb23ef36d65ffc99a721c5310d8a3d.tar.bz2
Added a hac^H^H^Hpatch from ferrieux to mask around the exit hang on windows until
the issues are fixed at the core level.
-rw-r--r--generic/tclEvent.c25
1 files changed, 13 insertions, 12 deletions
diff --git a/generic/tclEvent.c b/generic/tclEvent.c
index 941d566..3bb6c62 100644
--- a/generic/tclEvent.c
+++ b/generic/tclEvent.c
@@ -1299,18 +1299,19 @@ Tcl_FinalizeThread(void)
TclFinalizeAsync();
TclFinalizeThreadObjects();
}
-
- /*
- * Blow away all thread local storage blocks.
- *
- * Note that Tcl API allows creation of threads which do not use any Tcl
- * interp or other Tcl subsytems. Those threads might, however, use thread
- * local storage, so we must unconditionally finalize it.
- *
- * Fix [Bug #571002]
- */
-
- TclFinalizeThreadData();
+ if (!TclInExit()) {
+ /*
+ * Blow away all thread local storage blocks.
+ *
+ * Note that Tcl API allows creation of threads which do not use any Tcl
+ * interp or other Tcl subsytems. Those threads might, however, use thread
+ * local storage, so we must unconditionally finalize it.
+ *
+ * Fix [Bug #571002]
+ */
+
+ TclFinalizeThreadData();
+ }
}
/*