Update.
authorUlrich Drepper <drepper@redhat.com>
Sun, 10 Jun 2001 06:51:02 +0000 (06:51 +0000)
committerUlrich Drepper <drepper@redhat.com>
Sun, 10 Jun 2001 06:51:02 +0000 (06:51 +0000)
2001-06-08  Andreas Schwab  <schwab@suse.de>

* posix/regex.c (re_match_2_internal) [case wordbeg, wordend]:
Don't dereference at end of string.

ChangeLog
posix/regex.c

index 4eb9f1e..5fa7201 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2001-06-08  Andreas Schwab  <schwab@suse.de>
+
+       * posix/regex.c (re_match_2_internal) [case wordbeg, wordend]:
+       Don't dereference at end of string.
+
 2001-06-06  Roland McGrath  <roland@frob.com>
 
        * sysdeps/mach/hurd/getsockopt.c: Fix handling of returned buffer size.
index ca46459..086de08 100644 (file)
@@ -7094,14 +7094,15 @@ re_match_2_internal (bufp, string1, size1, string2, size2, pos, regs, stop)
 
        case wordbeg:
           DEBUG_PRINT1 ("EXECUTING wordbeg.\n");
-         if (WORDCHAR_P (d) && (AT_STRINGS_BEG (d) || !WORDCHAR_P (d - 1)))
+         if (!AT_STRINGS_END (d) && WORDCHAR_P (d)
+             && (AT_STRINGS_BEG (d) || !WORDCHAR_P (d - 1)))
            break;
           goto fail;
 
        case wordend:
           DEBUG_PRINT1 ("EXECUTING wordend.\n");
          if (!AT_STRINGS_BEG (d) && WORDCHAR_P (d - 1)
-              && (!WORDCHAR_P (d) || AT_STRINGS_END (d)))
+              && (AT_STRINGS_END (d) || !WORDCHAR_P (d)))
            break;
           goto fail;