diff options
| author | Stefan Monnier | 2023-12-26 23:56:09 -0500 |
|---|---|---|
| committer | Stefan Monnier | 2024-01-04 16:36:22 -0500 |
| commit | 02edbc88a1210b8d5a3e62ca4f03ffd17b23cbf7 (patch) | |
| tree | a37f8100646efe24a7224c947c7bc66ec4683c16 /admin | |
| parent | a5dcc1abea32abc906abfb66599c280b01d6ba27 (diff) | |
| download | emacs-02edbc88a1210b8d5a3e62ca4f03ffd17b23cbf7.tar.gz emacs-02edbc88a1210b8d5a3e62ca4f03ffd17b23cbf7.zip | |
eval.c: Add new var `lisp-eval-depth-reserve`
Rather than blindly increase `max-lisp-eval-depth` when entering the
debugger or running `signal-hook-function`, use this new "reserve"
to keep track of how much we have grown the stack for "debugger"
purposes so that for example recursive calls to `signal-hook-function`
can't eat up the whole C stack.
* src/eval.c (max_ensure_room): Rewrite.
(restore_stack_limits): Move before `max_ensure_room`. Rewrite.
(call_debugger, signal_or_quit): Adjust calls accordingly.
Also grow `max-lisp-eval-depth` for `hander-bind` handlers.
(init_eval_once): Don't initialize `max_lisp_eval_depth` here.
(syms_of_eval): Initialize it here instead.
Add new var `lisp-eval-depth-reserve`.
* doc/lispref/eval.texi (Eval): Add `lisp-eval-depth-reserve`.
Diffstat (limited to 'admin')
0 files changed, 0 insertions, 0 deletions