diff options
author | dgp <dgp@users.sourceforge.net> | 2014-03-28 20:29:03 (GMT) |
---|---|---|
committer | dgp <dgp@users.sourceforge.net> | 2014-03-28 20:29:03 (GMT) |
commit | 8655555eb47137bde7b3feeba1ea7b0913168943 (patch) | |
tree | 1d21904caed29ddac825462a068c419804460557 /generic/tclIORChan.c | |
parent | 2d315899eb5f0ed08932292cfd68803fcb7429f3 (diff) | |
parent | 2a5a3323cb1ca687feb5548200410385661b35e9 (diff) | |
download | tcl-8655555eb47137bde7b3feeba1ea7b0913168943.zip tcl-8655555eb47137bde7b3feeba1ea7b0913168943.tar.gz tcl-8655555eb47137bde7b3feeba1ea7b0913168943.tar.bz2 |
Merge minimal fix for iocmd-23.11.
Note that top channel regeneration is removed, so that Preserve/Release
call pairs are sure to operate on the same pointers. Other bug fixes
may need to change that.
Diffstat (limited to 'generic/tclIORChan.c')
-rw-r--r-- | generic/tclIORChan.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/generic/tclIORChan.c b/generic/tclIORChan.c index cb0282a..a09a7a6 100644 --- a/generic/tclIORChan.c +++ b/generic/tclIORChan.c @@ -586,6 +586,7 @@ TclChanCreateObjCmd( chan = Tcl_CreateChannel(&tclRChannelType, TclGetString(rcId), rcPtr, mode); rcPtr->chan = chan; + Tcl_Preserve(chan); chanPtr = (Channel *) chan; /* @@ -2306,6 +2307,7 @@ FreeReflectedChannel( ckfree(chanPtr->typePtr); chanPtr->typePtr = NULL; } + Tcl_Release(chanPtr); FreeReflectedChannelArgs(rcPtr); |