summaryrefslogtreecommitdiffstats
path: root/generic/tclIO.c
diff options
context:
space:
mode:
authorsebres <sebres@users.sourceforge.net>2024-05-16 08:56:45 (GMT)
committersebres <sebres@users.sourceforge.net>2024-05-16 08:56:45 (GMT)
commit3ff95fafbc05d49977f421eb41e0952d70c91f4b (patch)
tree851e85ae0be75bf386a7a8809d4fbade4e5ed7c5 /generic/tclIO.c
parent215645597f4f94533ab6a566d7ed694e8cc355cb (diff)
parent03cf1c69bbf2cbf952abeef3db7bf2129756e53b (diff)
downloadtcl-3ff95fafbc05d49977f421eb41e0952d70c91f4b.zip
tcl-3ff95fafbc05d49977f421eb41e0952d70c91f4b.tar.gz
tcl-3ff95fafbc05d49977f421eb41e0952d70c91f4b.tar.bz2
code review: preserving r/w channels after all possible failures (don't need to release in error case)
Diffstat (limited to 'generic/tclIO.c')
-rw-r--r--generic/tclIO.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/generic/tclIO.c b/generic/tclIO.c
index 2d7612c..d4c52a7 100644
--- a/generic/tclIO.c
+++ b/generic/tclIO.c
@@ -9186,9 +9186,6 @@ TclCopyChannel(
int nonBlocking = (cmdPtr) ? CHANNEL_NONBLOCKING : 0;
int moveBytes;
- TclChannelPreserve(inChan);
- TclChannelPreserve(outChan);
-
inStatePtr = inPtr->state;
outStatePtr = outPtr->state;
@@ -9270,6 +9267,9 @@ TclCopyChannel(
}
csPtr->cmdPtr = cmdPtr;
+ TclChannelPreserve(inChan);
+ TclChannelPreserve(outChan);
+
inStatePtr->csPtrR = csPtr;
outStatePtr->csPtrW = csPtr;