diff options
author | Isamu Hasegawa <isamu@yamato.ibm.com> | 2001-08-13 02:23:00 +0000 |
---|---|---|
committer | DJ Delorie <dj@gcc.gnu.org> | 2001-08-12 22:23:00 -0400 |
commit | ccea0d8509461d1ad235ead765c40cf7e93b4887 (patch) | |
tree | 737b395d84f9be3f6ae967d1d371624ce3b90f5c /libiberty | |
parent | dc297297ea56b13efad4bcddab5359fae7d819c1 (diff) | |
download | gcc-ccea0d8509461d1ad235ead765c40cf7e93b4887.tar.gz |
backport: regex.c (wcs_regex_compile): Use appropriate string to compare with collating element.
Merge from libc:
* regex.c (wcs_regex_compile): Use appropriate string
to compare with collating element.
Fix the padding for the alignment.
From-SVN: r44838
Diffstat (limited to 'libiberty')
-rw-r--r-- | libiberty/ChangeLog | 6 | ||||
-rw-r--r-- | libiberty/regex.c | 4 |
2 files changed, 8 insertions, 2 deletions
diff --git a/libiberty/ChangeLog b/libiberty/ChangeLog index 0a2b29542ad..9431ae51401 100644 --- a/libiberty/ChangeLog +++ b/libiberty/ChangeLog @@ -1,3 +1,9 @@ +2001-08-12 Isamu Hasegawa <isamu@yamato.ibm.com> + + * regex.c (wcs_regex_compile): Use appropriate string + to compare with collating element. + Fix the padding for the alignment. + 2001-08-10 Andrew Cagney <ac131313@redhat.com> * lbasename.c (lbasename): Change function definition to return a diff --git a/libiberty/regex.c b/libiberty/regex.c index 555d3bbf66a..f22047caa03 100644 --- a/libiberty/regex.c +++ b/libiberty/regex.c @@ -3059,7 +3059,7 @@ PREFIX(regex_compile) (ARG_PREFIX(pattern), ARG_PREFIX(size), syntax, bufp) /* First compare the hashing value. */ if (symb_table[2 * elem] == hash && c1 == extra[symb_table[2 * elem + 1]] - && memcmp (str, + && memcmp (char_str, &extra[symb_table[2 * elem + 1] + 1], c1) == 0) { @@ -3079,7 +3079,7 @@ PREFIX(regex_compile) (ARG_PREFIX(pattern), ARG_PREFIX(size), syntax, bufp) in the table. */ idx += 1 + extra[idx]; /* Adjust for the alignment. */ - idx = (idx + 3) & ~4; + idx = (idx + 3) & ~3; str[0] = (wchar_t) idx + 4; } |