fixed amb988 - stack corruption in text parser. stack variables are moved to better detect pointer corruption now

--HG--
extra : convert_revision : svn%3A39bc706e-5318-0410-9160-8a85361fbb7c/trunk%401509
This commit is contained in:
David Anderson 2007-09-29 22:11:21 +00:00
parent b17cf5c7af
commit 8154fb4897

View File

@ -279,8 +279,8 @@ SMCParseError TextParsers::ParseStream_SMC(void *stream,
unsigned int *line, unsigned int *line,
unsigned int *col) unsigned int *col)
{ {
char in_buf[4096];
char *reparse_point = NULL; char *reparse_point = NULL;
char in_buf[4096];
char *parse_point = in_buf; char *parse_point = in_buf;
char *line_begin = in_buf; char *line_begin = in_buf;
unsigned int read; unsigned int read;
@ -301,7 +301,7 @@ SMCParseError TextParsers::ParseStream_SMC(void *stream,
smc->ReadSMC_ParseStart(); smc->ReadSMC_ParseStart();
while (srdr(stream, parse_point, sizeof(in_buf) - (parse_point - line_begin) - 1, &read)) while (srdr(stream, parse_point, sizeof(in_buf) - (parse_point - in_buf) - 1, &read))
{ {
if (!read) if (!read)
{ {