summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authordgp <dgp@users.sourceforge.net>2014-06-19 16:38:33 (GMT)
committerdgp <dgp@users.sourceforge.net>2014-06-19 16:38:33 (GMT)
commit002bdcfeb0578c3dc428a72d3bdd33b476740519 (patch)
treed223ee2da0c908231cb244fc9a5a5b2ad002755e
parentd27ff0c78862fc1652325b8c27e0882aa772171f (diff)
downloadtcl-002bdcfeb0578c3dc428a72d3bdd33b476740519.zip
tcl-002bdcfeb0578c3dc428a72d3bdd33b476740519.tar.gz
tcl-002bdcfeb0578c3dc428a72d3bdd33b476740519.tar.bz2
[b47b176adf] Stop segfault when variability in mutex lock schedules cause
a ForwardingResult to remain on the forwardList after it has been processed.
-rw-r--r--generic/tclIORTrans.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/generic/tclIORTrans.c b/generic/tclIORTrans.c
index e6e552f..d2707a1 100644
--- a/generic/tclIORTrans.c
+++ b/generic/tclIORTrans.c
@@ -2225,6 +2225,9 @@ DeleteReflectedTransformMap(
*/
evPtr = resultPtr->evPtr;
+ if (evPtr == NULL) {
+ continue;
+ }
paramPtr = evPtr->param;
evPtr->resultPtr = NULL;
@@ -2350,6 +2353,9 @@ DeleteThreadReflectedTransformMap(
*/
evPtr = resultPtr->evPtr;
+ if (evPtr == NULL) {
+ continue;
+ }
paramPtr = evPtr->param;
evPtr->resultPtr = NULL;