(re_match_2_internal): Fix off-by-one error; don't use
authorRichard M. Stallman <rms@gnu.org>
Sat, 11 May 1996 18:05:52 +0000 (18:05 +0000)
committerRichard M. Stallman <rms@gnu.org>
Sat, 11 May 1996 18:05:52 +0000 (18:05 +0000)
length of exactn as character, and don't use length of bitmap of
charset as bitmap.

src/regex.c

index e6d04a5..43cff32 100644 (file)
@@ -4505,9 +4505,9 @@ re_match_2_internal (bufp, string1, size1, string2, size2, pos, regs, stop)
 #endif
 
                 if ((re_opcode_t) p1[3] == exactn
-                   && ! ((int) p2[1] * BYTEWIDTH > (int) p1[4]
-                         && (p2[1 + p1[4] / BYTEWIDTH]
-                             & (1 << (p1[4] % BYTEWIDTH)))))
+                   && ! ((int) p2[1] * BYTEWIDTH > (int) p1[5]
+                         && (p2[2 + p1[5] / BYTEWIDTH]
+                             & (1 << (p1[5] % BYTEWIDTH)))))
                   {
                    p[-3] = (unsigned char) pop_failure_jump;
                     DEBUG_PRINT3 ("  %c != %c => pop_failure_jump.\n",