From 3c660b4d5575ccd0345166d3258cb2236f29e591 Mon Sep 17 00:00:00 2001 From: Roland McGrath Date: Wed, 19 Aug 1992 22:16:15 +0000 Subject: [PATCH] Formerly function.c.~21~ --- function.c | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/function.c b/function.c index 993667fd..96ecb86b 100644 --- a/function.c +++ b/function.c @@ -265,7 +265,7 @@ int pattern_matches (pattern, percent, word) register char *pattern, *percent, *word; { - unsigned int len; + unsigned int sfxlen, wordlen; if (percent == 0) { @@ -278,13 +278,14 @@ pattern_matches (pattern, percent, word) return streq (pattern, word); } - len = strlen (percent + 1); + sfxlen = strlen (percent + 1); + wordlen = strlen (word); - if (strlen (word) < (percent - pattern) + len + if (wordlen < (percent - pattern) + sfxlen || strncmp (pattern, word, percent - pattern)) return 0; - return !strcmp (percent + 1, word + (strlen (word) - len)); + return !strcmp (percent + 1, word + (wordlen - sfxlen)); } int shell_function_pid = 0, shell_function_completed;