Merge pull request #420 from dbrotz/disallow-null-char

Reject input that contains null characters
This commit is contained in:
Eldred Habert
2019-09-22 02:43:06 +02:00
committed by GitHub
2 changed files with 10 additions and 2 deletions

View File

@@ -269,6 +269,7 @@ YY_BUFFER_STATE yy_create_buffer(FILE *f)
/* Convert all line endings to LF and spaces */
char *mem = pBuffer->pBuffer;
int32_t lineCount = 0;
while (*mem) {
if ((mem[0] == '\\') && (mem[1] == '\"' || mem[1] == '\\')) {
@@ -279,15 +280,22 @@ YY_BUFFER_STATE yy_create_buffer(FILE *f)
|| ((mem[0] == '\r') && (mem[1] == '\n'))) {
*mem++ = ' ';
*mem++ = '\n';
lineCount++;
/* LF and CR */
} else if ((mem[0] == '\n') || (mem[0] == '\r')) {
*mem++ = '\n';
lineCount++;
} else {
mem++;
}
}
}
if (mem != pBuffer->pBuffer + size) {
nLineNo = lineCount + 1;
fatalerror("Found null character");
}
/* Remove comments */
mem = pBuffer->pBuffer;

View File

@@ -1,2 +1,2 @@
ERROR: null-in-macro.asm(1):
Unterminated MACRO definition.
ERROR: null-in-macro.asm(2):
Found null character