summaryrefslogtreecommitdiff
path: root/src/eval.c
diff options
context:
space:
mode:
authorGerd Möllmann <gerd@gnu.org>2022-10-06 09:09:04 +0200
committerGerd Möllmann <gerd@gnu.org>2022-10-06 09:10:17 +0200
commita112e3f017dd9704f44b4913a2c37ad32d3e73bd (patch)
treecc0a926a7108c3ba78139decb840e699d3fd196b /src/eval.c
parent039ada6d033a01fb98e5acdcf943d486625d940b (diff)
Inhibit GC in probably_quit (bug#58042)
Diffstat (limited to 'src/eval.c')
-rw-r--r--src/eval.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/eval.c b/src/eval.c
index 7da1d8fb989..8810136c041 100644
--- a/src/eval.c
+++ b/src/eval.c
@@ -1651,10 +1651,12 @@ process_quit_flag (void)
void
probably_quit (void)
{
+ specpdl_ref gc_count = inhibit_garbage_collection ();
if (!NILP (Vquit_flag) && NILP (Vinhibit_quit))
process_quit_flag ();
else if (pending_signals)
process_pending_signals ();
+ unbind_to (gc_count, Qnil);
}
DEFUN ("signal", Fsignal, Ssignal, 2, 2, 0,