summary refs log tree commit diff
path: root/posix
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 /posix
parenta6a033452139f198953074a6e8fb361361776c0b (diff)
downloadglibc-a532a41df58b8a0fd1614b5c0cdc7c6c1dc04da4.tar.gz
glibc-a532a41df58b8a0fd1614b5c0cdc7c6c1dc04da4.tar.xz
glibc-a532a41df58b8a0fd1614b5c0cdc7c6c1dc04da4.zip
* posix/regcomp.c (lookup_collation_sequence_value): check that
	nrules != 0 for multibyte chars.
Diffstat (limited to 'posix')
-rw-r--r--posix/regcomp.c5
1 files changed, 3 insertions, 2 deletions
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)
 	{