(make_definition): Don't dump core when given an unterminated string
in a -D option. From-SVN: r8013
This commit is contained in:
parent
aae43c5f40
commit
1a6e3d5275
13
gcc/cccp.c
13
gcc/cccp.c
@ -9289,7 +9289,18 @@ make_definition (str, op)
|
||||
p++;
|
||||
q = &buf[p - str];
|
||||
while (*p) {
|
||||
if (*p == '\\' && p[1] == '\n')
|
||||
if (*p == '\"' || *p == '\'') {
|
||||
int unterminated = 0;
|
||||
U_CHAR *p1 = skip_quoted_string (p, p + strlen (p), 0,
|
||||
NULL_PTR, NULL_PTR, &unterminated);
|
||||
if (unterminated)
|
||||
return;
|
||||
while (p != p1)
|
||||
if (*p == '\\' && p[1] == '\n')
|
||||
p += 2;
|
||||
else
|
||||
*q++ = *p++;
|
||||
} else if (*p == '\\' && p[1] == '\n')
|
||||
p += 2;
|
||||
/* Change newline chars into newline-markers. */
|
||||
else if (*p == '\n')
|
||||
|
Loading…
Reference in New Issue
Block a user