Mercurial > emacs
changeset 15011:994f5cef3de6
(MAX_FAILURE_ITEMS): Use 5 instead of actual number of regs.
author | Richard M. Stallman <rms@gnu.org> |
---|---|
date | Fri, 12 Apr 1996 22:57:28 +0000 |
parents | 1afa2e4aed57 |
children | 2dabff0bce33 |
files | src/regex.c |
diffstat | 1 files changed, 5 insertions(+), 2 deletions(-) [+] |
line wrap: on
line diff
--- a/src/regex.c Fri Apr 12 18:42:22 1996 +0000 +++ b/src/regex.c Fri Apr 12 22:57:28 1996 +0000 @@ -1004,7 +1004,7 @@ #endif /* Roughly the maximum number of failure points on the stack. Would be - exactly that if always used MAX_FAILURE_SPACE each time we failed. + exactly that if always used MAX_FAILURE_ITEMS items each time we failed. This is a variable only so users of regex can assign to it; we never change it ourselves. */ #if defined (MATCH_MAY_ALLOCATE) @@ -1221,7 +1221,10 @@ #endif /* We push at most this many items on the stack. */ -#define MAX_FAILURE_ITEMS ((num_regs - 1) * NUM_REG_ITEMS + NUM_NONREG_ITEMS) +/* We used to use (num_regs - 1), which is the number of registers + this regexp will save; but that was changed to 5 + to avoid stack overflow for a regexp with lots of parens. */ +#define MAX_FAILURE_ITEMS (5 * NUM_REG_ITEMS + NUM_NONREG_ITEMS) /* We actually push this many items. */ #define NUM_FAILURE_ITEMS \