diff options
-rw-r--r-- | ChangeLog | 3 | ||||
-rw-r--r-- | posix/regcomp.c | 2 |
2 files changed, 4 insertions, 1 deletions
@@ -1,5 +1,8 @@ 2009-08-23 Ulrich Drepper <drepper@redhat.com> + * posix/regcomp.c (parse_dup_op): Verify the expression is correctly + terminated. + * posix/unistd.h: Define _POSIX_VERSION and _POSIX2_* correctly if older POSIX versions are selected. diff --git a/posix/regcomp.c b/posix/regcomp.c index 4843cfea33..446fed5445 100644 --- a/posix/regcomp.c +++ b/posix/regcomp.c @@ -2481,7 +2481,7 @@ parse_dup_op (bin_tree_t *elem, re_string_t *regexp, re_dfa_t *dfa, return elem; } - if (BE (end != -1 && start > end, 0)) + if (BE ((end != -1 && start > end) || token->type != OP_CLOSE_DUP_NUM, 0)) { /* First number greater than second. */ *err = REG_BADBR; |