summaryrefslogtreecommitdiffstats
path: root/generic/tclThreadTest.c
diff options
context:
space:
mode:
authordgp <dgp@users.sourceforge.net>2018-09-10 15:28:23 (GMT)
committerdgp <dgp@users.sourceforge.net>2018-09-10 15:28:23 (GMT)
commitcdce5491b3109c7357b17345d9e84bdbef9ed848 (patch)
treed59e3b32ed157d2822e431b51cc6bd5ce3082512 /generic/tclThreadTest.c
parent843d29b4486fa92657c326b43383a8e7e860fdf3 (diff)
parent9a15a1b58648809ffb208eaa00cd20af4784050d (diff)
downloadtcl-cdce5491b3109c7357b17345d9e84bdbef9ed848.zip
tcl-cdce5491b3109c7357b17345d9e84bdbef9ed848.tar.gz
tcl-cdce5491b3109c7357b17345d9e84bdbef9ed848.tar.bz2
Rebase TIP 505 implementation a patch for 8.6.
Diffstat (limited to 'generic/tclThreadTest.c')
-rw-r--r--generic/tclThreadTest.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/generic/tclThreadTest.c b/generic/tclThreadTest.c
index 6fc0e52..35b3fc3 100644
--- a/generic/tclThreadTest.c
+++ b/generic/tclThreadTest.c
@@ -174,7 +174,6 @@ TclThread_Init(
Tcl_CreateObjCommand(interp, "testthread", ThreadObjCmd, NULL, NULL);
return TCL_OK;
}
-
/*
*----------------------------------------------------------------------
@@ -1158,6 +1157,14 @@ ThreadExitProc(
Tcl_MutexLock(&threadMutex);
+ if (self == errorThreadId) {
+ if (errorProcString) { /* Extra safety */
+ ckfree(errorProcString);
+ errorProcString = NULL;
+ }
+ errorThreadId = 0;
+ }
+
if (threadEvalScript) {
ckfree(threadEvalScript);
threadEvalScript = NULL;