Fix comment bug

There is a bug in processing the comments in source files. It's
related to #326. And this bug comes out when you comment something
with the character ';', and include the quotation mark without its
pair in it.

The lastest version of rgbds compiler has a step to parse the given
source to convert its line endings to a unified one, and it
processes quotation marks even before it processes the comments.

I edited a little bit of the source, and it works fine now.
This commit is contained in:
jidoc01
2019-07-04 11:59:13 +09:00
parent 3cd1d46a1b
commit 38110a833d

View File

@@ -181,16 +181,10 @@ YY_BUFFER_STATE yy_create_buffer(FILE *f)
/* Convert all line endings to LF and spaces */
char *mem = pBuffer->pBuffer;
uint32_t instring = 0;
while (*mem) {
if (*mem == '\"')
instring = 1 - instring;
if ((mem[0] == '\\') && (mem[1] == '\"' || mem[1] == '\\')) {
mem += 2;
} else if (instring) {
mem += 1;
} else {
/* LF CR and CR LF */
if (((mem[0] == 10) && (mem[1] == 13))
@@ -211,7 +205,7 @@ YY_BUFFER_STATE yy_create_buffer(FILE *f)
/* Remove comments */
mem = pBuffer->pBuffer;
instring = 0;
uint32_t instring = 0;
while (*mem) {
if (*mem == '\"')