diff options
| author | dgp <dgp@users.sourceforge.net> | 2013-06-26 20:13:57 (GMT) |
|---|---|---|
| committer | dgp <dgp@users.sourceforge.net> | 2013-06-26 20:13:57 (GMT) |
| commit | a9f49cd7815224e395b3a97cbc9d94ae1b789960 (patch) | |
| tree | 15cf45d4cf45d83d1ce0d4aba51644f981f528a8 | |
| parent | b3fea91162587f3d2f9cfb34de5bc0a6272a609e (diff) | |
| download | tcl-a9f49cd7815224e395b3a97cbc9d94ae1b789960.zip tcl-a9f49cd7815224e395b3a97cbc9d94ae1b789960.tar.gz tcl-a9f49cd7815224e395b3a97cbc9d94ae1b789960.tar.bz2 | |
Stop buffer overrun into undefined values detected by valgrind.
| -rw-r--r-- | generic/tclOptimize.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/generic/tclOptimize.c b/generic/tclOptimize.c index cd37a6a..b7f4173 100644 --- a/generic/tclOptimize.c +++ b/generic/tclOptimize.c @@ -212,7 +212,8 @@ ConvertZeroEffectToNOP( int blank = 0, i, nextInst; size = AddrLength(currentInstPtr); - while (*(currentInstPtr+size) == INST_NOP) { + while ((currentInstPtr + size < envPtr->codeNext) + && *(currentInstPtr+size) == INST_NOP) { if (IsTargetAddress(&targets, currentInstPtr + size)) { break; } |
