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 | |
| parent | e06feb86b1f483c70be8661a4914e980c91bef11 (diff) | |
| download | tcl-7476029a046978c3dc59b34a88d3be4c6e153613.zip tcl-7476029a046978c3dc59b34a88d3be4c6e153613.tar.gz tcl-7476029a046978c3dc59b34a88d3be4c6e153613.tar.bz2 | |
Fix [24b9181478]: Fix unsafe buffer lifetime
| -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) { |
