diff options
author | dgp <dgp@users.sourceforge.net> | 2012-07-24 20:18:35 (GMT) |
---|---|---|
committer | dgp <dgp@users.sourceforge.net> | 2012-07-24 20:18:35 (GMT) |
commit | d4161feaa0204157d9be2edc716938a3c068336b (patch) | |
tree | 7ba1bec4d7a58dc14e3c2478184ff4223e636207 /generic/tclIO.c | |
parent | 5544f2d2022ef86ce853094fd329619e3485a48e (diff) | |
download | tcl-d4161feaa0204157d9be2edc716938a3c068336b.zip tcl-d4161feaa0204157d9be2edc716938a3c068336b.tar.gz tcl-d4161feaa0204157d9be2edc716938a3c068336b.tar.bz2 |
Preserve the chanPtr so that script evaluation cannot invalidate it when
we plan to use it again.
Diffstat (limited to 'generic/tclIO.c')
-rw-r--r-- | generic/tclIO.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/generic/tclIO.c b/generic/tclIO.c index a1d5447..b9cd30c 100644 --- a/generic/tclIO.c +++ b/generic/tclIO.c @@ -7540,6 +7540,7 @@ TclChannelEventScriptInvoker(clientData, mask) */ Tcl_Preserve((ClientData) interp); + Tcl_Preserve((ClientData) chanPtr); result = Tcl_EvalObjEx(interp, esPtr->scriptPtr, TCL_EVAL_GLOBAL); /* @@ -7556,6 +7557,7 @@ TclChannelEventScriptInvoker(clientData, mask) } Tcl_BackgroundError(interp); } + Tcl_Release((ClientData) chanPtr); Tcl_Release((ClientData) interp); } |