Mercurial > ~dholland > hg > tradcpp > index.cgi
diff macro.c @ 203:3a25180d3a5c
Abort on line numbering or column numbering overflow.
Line numbers are limited to values that fit in "unsigned int". Also
reject input lines longer than 2^32-1 characters. It seems reasonable
to presume that any input that violates these constraints is someone
screwing around and not a serious attempt to compile or preprocess
anything useful. Done in response to n2129, but without getting into
any of the silliness found there.
author | David A. Holland |
---|---|
date | Tue, 01 Aug 2017 14:51:04 -0400 |
parents | 1d2bad7151f9 |
children |
line wrap: on
line diff
--- a/macro.c Thu Dec 15 23:53:13 2016 -0500 +++ b/macro.c Tue Aug 01 14:51:04 2017 -0400 @@ -523,7 +523,7 @@ while (params != NULL) { len = strspn(params, ws); params += len; - p->column += len; + place_addcolumns(p, len); s = strchr(params, ','); if (s) { len = s-params; @@ -541,7 +541,7 @@ stringarray_add(&m->params, param, NULL); } params = s; - p->column += len; + place_addcolumns(p, len); } }