diff options
author | dgp <dgp@users.sourceforge.net> | 2014-05-09 17:46:45 (GMT) |
---|---|---|
committer | dgp <dgp@users.sourceforge.net> | 2014-05-09 17:46:45 (GMT) |
commit | 73f53667edbf72a3b3f591e5af3fe5abbc405377 (patch) | |
tree | bacf44f260810bea56e8860043d991e4ae62bb30 /generic | |
parent | fbb32b908cbf75e5c6f9a38ba91b3e9272fdf0d5 (diff) | |
download | tcl-73f53667edbf72a3b3f591e5af3fe5abbc405377.zip tcl-73f53667edbf72a3b3f591e5af3fe5abbc405377.tar.gz tcl-73f53667edbf72a3b3f591e5af3fe5abbc405377.tar.bz2 |
Repair another "impossible" test and the segfault it reveals.
Diffstat (limited to 'generic')
-rw-r--r-- | generic/tclIORTrans.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/generic/tclIORTrans.c b/generic/tclIORTrans.c index 1de635f..1dff4b3 100644 --- a/generic/tclIORTrans.c +++ b/generic/tclIORTrans.c @@ -2010,6 +2010,7 @@ InvokeTclMethod( sr = Tcl_SaveInterpState(rtPtr->interp, 0 /* Dummy */); Tcl_Preserve(rtPtr); + Tcl_Preserve(rtPtr->interp); result = Tcl_EvalObjv(rtPtr->interp, cmdc, rtPtr->argv, TCL_EVAL_GLOBAL); /* @@ -2054,6 +2055,7 @@ InvokeTclMethod( Tcl_IncrRefCount(resObj); } Tcl_RestoreInterpState(rtPtr->interp, sr); + Tcl_Release(rtPtr->interp); Tcl_Release(rtPtr); /* |