Mercurial > ~dholland > hg > tradcpp > index.cgi
comparison main.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 |
comparison
equal
deleted
inserted
replaced
202:e200cb46ab23 | 203:3a25180d3a5c |
---|---|
153 val++; | 153 val++; |
154 } | 154 } |
155 | 155 |
156 if (val) { | 156 if (val) { |
157 p2 = *p; | 157 p2 = *p; |
158 p2.column += strlen(str); | 158 place_addcolumns(&p2, strlen(str)); |
159 } else { | 159 } else { |
160 place_setbuiltin(&p2, 1); | 160 place_setbuiltin(&p2, 1); |
161 } | 161 } |
162 commandline_macro_add(p, str, &p2, val ? val : "1"); | 162 commandline_macro_add(p, str, &p2, val ? val : "1"); |
163 } | 163 } |