From: Paul Eggert Date: Fri, 13 Dec 2013 00:51:47 +0000 (-0800) Subject: Fix bug in previous regex.c change, which broke a\{2,}. X-Git-Tag: emacs-24.3.90~173^2^2~42^2~45^2~387^2~437 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=a3fab1ec17f05e2782dcde814018fc48a3bbebb9;p=emacs.git Fix bug in previous regex.c change, which broke a\{2,}. --- diff --git a/src/regex.c b/src/regex.c index faa645cdd28..75f7de34646 100644 --- a/src/regex.c +++ b/src/regex.c @@ -3311,15 +3311,15 @@ regex_compile (const_re_char *pattern, size_t size, reg_syntax_t syntax, GET_INTERVAL_COUNT (lower_bound); if (c == ',') - { - GET_INTERVAL_COUNT (upper_bound); - if (upper_bound < lower_bound) - FREE_STACK_RETURN (REG_BADBR); - } + GET_INTERVAL_COUNT (upper_bound); else /* Interval such as `{1}' => match exactly once. */ upper_bound = lower_bound; + if (lower_bound < 0 + || (0 <= upper_bound && upper_bound < lower_bound)) + FREE_STACK_RETURN (REG_BADBR); + if (!(syntax & RE_NO_BK_BRACES)) { if (c != '\\')