diff options
author | jan.nijtmans <nijtmans@users.sourceforge.net> | 2011-06-01 12:09:09 (GMT) |
---|---|---|
committer | jan.nijtmans <nijtmans@users.sourceforge.net> | 2011-06-01 12:09:09 (GMT) |
commit | ffdd191a57e3105fd2a4702b0c2496b83c9e0637 (patch) | |
tree | fb755d548645c07cd9eb8e543777ac769deab746 | |
parent | 9d5b29a8051a1ca0b93a8fcdb7058920dad2a883 (diff) | |
parent | ab1ff5f9d6a78c586f81d6c274544cb5b4c45b92 (diff) | |
download | tcl-ffdd191a57e3105fd2a4702b0c2496b83c9e0637.zip tcl-ffdd191a57e3105fd2a4702b0c2496b83c9e0637.tar.gz tcl-ffdd191a57e3105fd2a4702b0c2496b83c9e0637.tar.bz2 |
fix for [Bug 3309871]: Valgrind finds: invalid read in TclMaxListLength()
-rw-r--r-- | ChangeLog | 5 | ||||
-rw-r--r-- | generic/tclUtil.c | 4 |
2 files changed, 7 insertions, 2 deletions
@@ -1,3 +1,8 @@ +2011-06-01 Jan Nijtmans <nijtmans@users.sf.net> + + * generic/tclUtil.c: fix for [Bug 3309871]: Valgrind finds: + invalid read in TclMaxListLength() + 2011-05-31 Don Porter <dgp@users.sourceforge.net> * generic/tclInt.h: Use a complete growth algorithm for lists diff --git a/generic/tclUtil.c b/generic/tclUtil.c index ce66096..f424381 100644 --- a/generic/tclUtil.c +++ b/generic/tclUtil.c @@ -408,8 +408,8 @@ TclMaxListLength( do { bytes++; numBytes -= (numBytes != -1); - } while (numBytes && TclIsSpaceProc(*bytes)); - if (numBytes == 0) { + } while (numBytes && (*bytes != '\0') && TclIsSpaceProc(*bytes)); + if ((numBytes == 0) || (*bytes == '\0')) { break; } /* (*bytes) is non-space; return to counting state */ |