Mercurial > emacs
changeset 7012:1857dd7c6f04
*** empty log message ***
author | Karl Heuer <kwzh@gnu.org> |
---|---|
date | Thu, 21 Apr 1994 19:45:27 +0000 |
parents | a8fe822b48dc |
children | 89f37ab7b781 |
files | src/regex.c |
diffstat | 1 files changed, 2 insertions(+), 4 deletions(-) [+] |
line wrap: on
line diff
--- a/src/regex.c Thu Apr 21 19:26:10 1994 +0000 +++ b/src/regex.c Thu Apr 21 19:45:27 1994 +0000 @@ -1256,7 +1256,6 @@ We make the fail stack a global thing, and then grow it to re_max_failures when we compile. */ #ifndef MATCH_MAY_ALLOCATE -static int fail_stack_allocated; static fail_stack_type fail_stack; static const char ** regstart, ** regend; @@ -2493,9 +2492,9 @@ /* Since DOUBLE_FAIL_STACK refuses to double only if the current size is strictly greater than re_max_failures, the largest possible stack is 2 * re_max_failures failure points. */ - fail_stack.size = (2 * re_max_failures * MAX_FAILURE_ITEMS); - if (fail_stack.size > fail_stack_allocated) + if (fail_stack.size < (2 * re_max_failures * MAX_FAILURE_ITEMS)) { + fail_stack.size = (2 * re_max_failures * MAX_FAILURE_ITEMS); if (! fail_stack.stack) fail_stack.stack = (fail_stack_elt_t *) malloc (fail_stack.size @@ -2505,7 +2504,6 @@ (fail_stack_elt_t *) realloc (fail_stack.stack, (fail_stack.size * sizeof (fail_stack_elt_t))); - fail_stack_allocated = fail_stack.size; } /* Initialize some other variables the matcher uses. */