summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMiguel Sofer <miguel.sofer@gmail.com>2007-10-15 13:22:49 (GMT)
committerMiguel Sofer <miguel.sofer@gmail.com>2007-10-15 13:22:49 (GMT)
commitb07a30380fa20325af4a7acbc29f93dd7ed60ec1 (patch)
tree747d43194a9bc6189dfa63e18ef47443c599f6f8
parent93bdcaa2770cf012d11108b3fb72ce5dab16da76 (diff)
downloadtcl-b07a30380fa20325af4a7acbc29f93dd7ed60ec1.zip
tcl-b07a30380fa20325af4a7acbc29f93dd7ed60ec1.tar.gz
tcl-b07a30380fa20325af4a7acbc29f93dd7ed60ec1.tar.bz2
* generic/tclParse.c (Tcl_ParseBraces): fix for possible read
after the end of buffer, [Bug 1813528] (Joe Mistachkin).
-rw-r--r--ChangeLog5
-rw-r--r--generic/tclParse.c4
2 files changed, 7 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog
index f1b715f..d52f608 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2007-10-15 Miguel Sofer <msofer@users.sf.net>
+
+ * generic/tclParse.c (Tcl_ParseBraces): fix for possible read
+ after the end of buffer, [Bug 1813528] (Joe Mistachkin).
+
2007-10-14 David Gravereaux <davygrvy@pobox.com>
* tools/mkdepend.tcl (new): Initial stab at generating automatic
diff --git a/generic/tclParse.c b/generic/tclParse.c
index 8fe9516..b11e5bf 100644
--- a/generic/tclParse.c
+++ b/generic/tclParse.c
@@ -12,7 +12,7 @@
* See the file "license.terms" for information on usage and redistribution of
* this file, and for a DISCLAIMER OF ALL WARRANTIES.
*
- * RCS: @(#) $Id: tclParse.c,v 1.56 2007/07/19 13:57:36 dgp Exp $
+ * RCS: @(#) $Id: tclParse.c,v 1.57 2007/10/15 13:22:50 msofer Exp $
*/
#include "tclInt.h"
@@ -1785,7 +1785,7 @@ Tcl_ParseBraces(
{
register int openBrace = 0;
- for (; src > start; src--) {
+ while (--src > start) {
switch (*src) {
case '{':
openBrace = 1;