From: Isamu Hasegawa Date: Mon, 13 Aug 2001 02:23:00 +0000 (+0000) Subject: backport: regex.c (wcs_regex_compile): Use appropriate string to compare with collati... X-Git-Tag: prereleases/libstdc++-3.0.95~2697 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=ccea0d8509461d1ad235ead765c40cf7e93b4887;p=thirdparty%2Fgcc.git 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 --- diff --git a/libiberty/ChangeLog b/libiberty/ChangeLog index 0a2b29542ade..9431ae514014 100644 --- a/libiberty/ChangeLog +++ b/libiberty/ChangeLog @@ -1,3 +1,9 @@ +2001-08-12 Isamu Hasegawa + + * regex.c (wcs_regex_compile): Use appropriate string + to compare with collating element. + Fix the padding for the alignment. + 2001-08-10 Andrew Cagney * lbasename.c (lbasename): Change function definition to return a diff --git a/libiberty/regex.c b/libiberty/regex.c index 555d3bbf66aa..f22047caa03b 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; }