summaryrefslogtreecommitdiffstats
path: root/generic/tclIO.c
diff options
context:
space:
mode:
authormax <max@tclers.tk>2022-08-04 15:26:18 (GMT)
committermax <max@tclers.tk>2022-08-04 15:26:18 (GMT)
commit228c1134e28746ff7ea71d582ce3b80e68fe030a (patch)
treef00d98d464e4f894b940844c2809f5835aca4b4b /generic/tclIO.c
parent2da979cd8e0bfb96bc57578f2ff2413efd393e5c (diff)
parent7c269c207f4a9c13dd64edea5fa799a5d952742c (diff)
downloadtcl-228c1134e28746ff7ea71d582ce3b80e68fe030a.zip
tcl-228c1134e28746ff7ea71d582ce3b80e68fe030a.tar.gz
tcl-228c1134e28746ff7ea71d582ce3b80e68fe030a.tar.bz2
Fix a case of lf not being flushed in certain cases when the crlf sequence gets split across two buffers on channels in crlf mode with line buffering [https://core.tcl-lang.org/tcllib/tktview?name=c9d8a52fe]
Diffstat (limited to 'generic/tclIO.c')
-rw-r--r--generic/tclIO.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/generic/tclIO.c b/generic/tclIO.c
index d6e0aa4..5313eed 100644
--- a/generic/tclIO.c
+++ b/generic/tclIO.c
@@ -4488,8 +4488,8 @@ Write(
}
}
}
- if ((flushed < total) && (GotFlag(statePtr, CHANNEL_UNBUFFERED) ||
- (needNlFlush && GotFlag(statePtr, CHANNEL_LINEBUFFERED)))) {
+ if (((flushed < total) && GotFlag(statePtr, CHANNEL_UNBUFFERED)) ||
+ (needNlFlush && GotFlag(statePtr, CHANNEL_LINEBUFFERED))) {
if (FlushChannel(NULL, chanPtr, 0) != 0) {
return -1;
}