summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2007-09-24 03:31:47 +0000
committerUlrich Drepper <drepper@redhat.com>2007-09-24 03:31:47 +0000
commita532a41df58b8a0fd1614b5c0cdc7c6c1dc04da4 (patch)
treed474d27644d0be4e75d9179ec7a71eb93875ec24
parenta6a033452139f198953074a6e8fb361361776c0b (diff)
* posix/regcomp.c (lookup_collation_sequence_value): check that
nrules != 0 for multibyte chars.
-rw-r--r--ChangeLog5
-rw-r--r--posix/regcomp.c5
2 files changed, 8 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog
index 4c7aa2202b..16e026e7c2 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2007-09-13 Aurelien Jarno <aurelien@aurel32.net>
+
+ * posix/regcomp.c (lookup_collation_sequence_value): check that
+ nrules != 0 for multibyte chars.
+
2007-09-23 Ulrich Drepper <drepper@redhat.com>
* resolv/ns_print.c (ns_sprintrrf): Handle ns_t_a6 and ns_t_opt.
diff --git a/posix/regcomp.c b/posix/regcomp.c
index e99fd74924..129546c32c 100644
--- a/posix/regcomp.c
+++ b/posix/regcomp.c
@@ -2747,7 +2747,7 @@ parse_bracket_exp (re_string_t *regexp, re_dfa_t *dfa, re_token_t *token,
return elem;
}
- /* Local function for parse_bracket_exp used in _LIBC environement.
+ /* Local function for parse_bracket_exp used in _LIBC environment.
Look up the collation sequence value of BR_ELEM.
Return the value if succeeded, UINT_MAX otherwise. */
@@ -2771,7 +2771,8 @@ parse_bracket_exp (re_string_t *regexp, re_dfa_t *dfa, re_token_t *token,
}
else if (br_elem->type == MB_CHAR)
{
- return __collseq_table_lookup (collseqwc, br_elem->opr.wch);
+ if (nrules != 0)
+ return __collseq_table_lookup (collseqwc, br_elem->opr.wch);
}
else if (br_elem->type == COLL_SYM)
{