diff options
author | Ulrich Drepper <drepper@redhat.com> | 2001-06-10 06:51:02 +0000 |
---|---|---|
committer | Ulrich Drepper <drepper@redhat.com> | 2001-06-10 06:51:02 +0000 |
commit | e10a9ebaa658d1b9e467556053cf7634f8d1b9fd (patch) | |
tree | 545f329449bf6afdcc2bc7cb9459860a5200fb9d /posix/regex.c | |
parent | 582e776ffcec1ea90a8961f498e4d5014af7e7dc (diff) | |
download | glibc-e10a9ebaa658d1b9e467556053cf7634f8d1b9fd.zip glibc-e10a9ebaa658d1b9e467556053cf7634f8d1b9fd.tar.gz glibc-e10a9ebaa658d1b9e467556053cf7634f8d1b9fd.tar.bz2 |
Update.
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.
Diffstat (limited to 'posix/regex.c')
-rw-r--r-- | posix/regex.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/posix/regex.c b/posix/regex.c index ca46459..086de08 100644 --- a/posix/regex.c +++ b/posix/regex.c @@ -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; |