heheh. Forgot the fix. Here it is:
authorErik Andersen <andersen@codepoet.org>
Wed, 5 Jan 2000 05:49:51 +0000 (05:49 -0000)
committerErik Andersen <andersen@codepoet.org>
Wed, 5 Jan 2000 05:49:51 +0000 (05:49 -0000)
* Grep -i previously failed on UPPER CASE patterns due to a silly
    regexp implementation bug that is now fixed.

 -Erik

regexp.c

index b264ffb6fd3bba6c91736ec4a6fe26fe29e6fafc..11b46c72029677cc1788ffa4a742455172a3ae89 100644 (file)
--- a/regexp.c
+++ b/regexp.c
@@ -385,11 +385,14 @@ static int match1(regexp* re, char ch, int token, int ignoreCase)
                if (re->program[1 + 32 * (token - M_CLASS(0)) + (ch >> 3)] & (1 << (ch & 7)))
                        return 0;
        }
-       else if (ch == token
-               || (ignoreCase==TRUE && isupper(ch) && tolower(ch) == token))
+//fprintf(stderr, "match1: ch='%c' token='%c': ", ch, token);
+       if (ch == token
+               || (ignoreCase==TRUE && tolower(ch) == tolower(token)))
        {
+//fprintf(stderr, "match\n");
                return 0;
        }
+//fprintf(stderr, "no match\n");
        return 1;
 }