|
@@ -423,13 +423,15 @@ static struct string_list *read_node(FILE *f)
|
|
struct string_list node = {
|
|
struct string_list node = {
|
|
.string = buffer,
|
|
.string = buffer,
|
|
.tag = SYM_NORMAL };
|
|
.tag = SYM_NORMAL };
|
|
- int c;
|
|
|
|
|
|
+ int c, in_string = 0;
|
|
|
|
|
|
while ((c = fgetc(f)) != EOF) {
|
|
while ((c = fgetc(f)) != EOF) {
|
|
- if (c == ' ') {
|
|
|
|
|
|
+ if (!in_string && c == ' ') {
|
|
if (node.string == buffer)
|
|
if (node.string == buffer)
|
|
continue;
|
|
continue;
|
|
break;
|
|
break;
|
|
|
|
+ } else if (c == '"') {
|
|
|
|
+ in_string = !in_string;
|
|
} else if (c == '\n') {
|
|
} else if (c == '\n') {
|
|
if (node.string == buffer)
|
|
if (node.string == buffer)
|
|
return NULL;
|
|
return NULL;
|