Commit 945a7622 authored by Paul Eggert's avatar Paul Eggert

Fix emacs_re_safe_alloca calculation

Problem and draft fix noted by Eli Zaretskii in:
https://lists.gnu.org/r/emacs-devel/2018-10/msg00022.html
* src/emacs.c (main): Fix arithmetic used in calculation
of emacs_re_safe_alloca.
parent 5cbce957
......@@ -888,11 +888,11 @@ main (int argc, char **argv)
lim = newlim;
}
}
/* If the stack is big enough, let regex-emacs.c more of it before
falling back to heap allocation. */
emacs_re_safe_alloca = max
(min (lim - extra, SIZE_MAX) * (min_ratio / ratio),
MAX_ALLOCA);
/* If the stack is big enough, let regex-emacs.c use more of it
before falling back to heap allocation. */
ptrdiff_t max_failures
= min (lim - extra, min (PTRDIFF_MAX, SIZE_MAX)) / ratio;
emacs_re_safe_alloca = max (max_failures * min_ratio, MAX_ALLOCA);
}
#endif /* HAVE_SETRLIMIT and RLIMIT_STACK and not CYGWIN */
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment