mirror of
https://github.com/mirror/make.git
synced 2025-02-28 21:00:47 +08:00
Formerly read.c.~39~
This commit is contained in:
parent
f31ff1c1c4
commit
81acf8675a
19
read.c
19
read.c
@ -1385,11 +1385,24 @@ parse_file_seq (stringp, stopchar, size, strip)
|
||||
p--;
|
||||
|
||||
if (strip)
|
||||
while (q[0] == '.' && q[1] == '/' && q[2] != '\0' && !isblank (q[2]))
|
||||
q += 2;
|
||||
{
|
||||
/* Skip leading `./'s. */
|
||||
while (p - q > 2 && q[0] == '.' && q[1] == '/')
|
||||
{
|
||||
q += 2; /* Skip "./". */
|
||||
while (q < p && *q == '/')
|
||||
/* Skip following slashes: ".//foo" is "foo", not "/foo". */
|
||||
++q;
|
||||
}
|
||||
}
|
||||
|
||||
/* Extract the filename just found, and skip it. */
|
||||
name = savestring (q, p - q);
|
||||
|
||||
if (q == p)
|
||||
/* ".///" was stripped to "". */
|
||||
name = savestring ("./", 2);
|
||||
else
|
||||
name = savestring (q, p - q);
|
||||
|
||||
/* Add it to the front of the chain. */
|
||||
new1 = (struct nameseq *) xmalloc (size);
|
||||
|
Loading…
Reference in New Issue
Block a user