From: Roland McGrath Date: Sat, 22 Jun 1996 19:26:13 +0000 (+0000) Subject: Sat Jun 15 20:30:01 1996 Andreas Schwab X-Git-Tag: 3.74.5~21 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=783e6680b2b953a39ba2a94fb746439cbf5dc368;p=thirdparty%2Fmake.git Sat Jun 15 20:30:01 1996 Andreas Schwab * read.c (find_char_unquote): Avoid calling strlen on every call just to throw away the value most of the time. --- diff --git a/read.c b/read.c index 76681624..c2de63bd 100644 --- a/read.c +++ b/read.c @@ -1509,7 +1509,7 @@ find_char_unquote (string, stopchars, blank) char *stopchars; int blank; { - unsigned int string_len = strlen (string); + unsigned int string_len = 0; register char *p = string; while (1) @@ -1527,6 +1527,9 @@ find_char_unquote (string, stopchars, blank) while (&p[i] >= string && p[i] == '\\') --i; ++i; + /* Only compute the length if really needed. */ + if (string_len == 0) + string_len = strlen (string); /* The number of backslashes is now -I. Copy P over itself to swallow half of them. */ bcopy (&p[i / 2], &p[i], (string_len - (p - string)) - (i / 2) + 1);