diff options
author | jan.nijtmans <nijtmans@users.sourceforge.net> | 2021-05-03 19:36:22 (GMT) |
---|---|---|
committer | jan.nijtmans <nijtmans@users.sourceforge.net> | 2021-05-03 19:36:22 (GMT) |
commit | 7476029a046978c3dc59b34a88d3be4c6e153613 (patch) | |
tree | fd0d4bb25e72fcbd16be094e52d9ddf02164eb9e /generic | |
parent | e06feb86b1f483c70be8661a4914e980c91bef11 (diff) | |
download | tcl-7476029a046978c3dc59b34a88d3be4c6e153613.zip tcl-7476029a046978c3dc59b34a88d3be4c6e153613.tar.gz tcl-7476029a046978c3dc59b34a88d3be4c6e153613.tar.bz2 |
Fix [24b9181478]: Fix unsafe buffer lifetime
Diffstat (limited to 'generic')
-rw-r--r-- | generic/tclIO.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/generic/tclIO.c b/generic/tclIO.c index 4d3df65..807fce1 100644 --- a/generic/tclIO.c +++ b/generic/tclIO.c @@ -3813,6 +3813,7 @@ Write( /* State info for channel */ char *nextNewLine = NULL; int endEncoding, saved = 0, total = 0, flushed = 0, needNlFlush = 0; + char safe[BUFFER_PADDING]; if (srcLen) { WillWrite(chanPtr); @@ -3831,7 +3832,7 @@ Write( while (srcLen + saved + endEncoding > 0) { ChannelBuffer *bufPtr; - char *dst, safe[BUFFER_PADDING]; + char *dst; int result, srcRead, dstLen, dstWrote, srcLimit = srcLen; if (nextNewLine) { |