From b70413668a72cbc36fba7d505131a71a847d602b Mon Sep 17 00:00:00 2001 From: Andreas Schwab Date: Sun, 6 Nov 2011 20:42:14 +0100 Subject: [PATCH] * src/keyboard.c (interrupt_signal): Don't call kill-emacs while in GC. --- src/ChangeLog | 5 +++++ src/keyboard.c | 8 ++++++-- 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/src/ChangeLog b/src/ChangeLog index e393da21cc2..a134b5f4871 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,8 @@ +2011-11-06 Andreas Schwab + + * keyboard.c (interrupt_signal): Don't call kill-emacs while in + GC. + 2011-11-06 Eli Zaretskii * xdisp.c (init_iterator, reseat_to_string): Don't set the diff --git a/src/keyboard.c b/src/keyboard.c index 95604550c80..11c37d14f64 100644 --- a/src/keyboard.c +++ b/src/keyboard.c @@ -10856,8 +10856,12 @@ interrupt_signal (int signalnum) /* If we don't have an argument, some */ if (!terminal) { /* If there are no frames there, let's pretend that we are a - well-behaving UN*X program and quit. */ - Fkill_emacs (Qnil); + well-behaving UN*X program and quit. We cannot do that while + GC is in progress, though. */ + if (!gc_in_progress) + Fkill_emacs (Qnil); + else + Vquit_flag = Qt; } else { -- 2.39.2