]> git.eshelyaron.com Git - emacs.git/commitdiff
Don't signal Quit from 'while-no-input' on TTY frames
authorEli Zaretskii <eliz@gnu.org>
Fri, 1 Mar 2019 10:19:03 +0000 (12:19 +0200)
committerEli Zaretskii <eliz@gnu.org>
Fri, 1 Mar 2019 10:19:03 +0000 (12:19 +0200)
* src/keyboard.c (read_char): Don't inject quit-char after
longjmp if while-no-input is in effect.  (Bug#34535)

src/keyboard.c

index 3af487cf0705443f5da3eecc589f9a03b9fe8540..c2d8b860e4e14388fc02596dec1c35dc8aaa8baf 100644 (file)
@@ -2551,7 +2551,10 @@ read_char (int commandflag, Lisp_Object map,
       restore_getcjmp (save_jump);
       pthread_sigmask (SIG_SETMASK, &empty_mask, 0);
       unbind_to (jmpcount, Qnil);
-      XSETINT (c, quit_char);
+      /* If we are in while-no-input, don't trigger C-g, as that will
+        quit instead of letting while-no-input do its thing.  */
+      if (!EQ (Vquit_flag, Vthrow_on_input))
+       XSETINT (c, quit_char);
       internal_last_event_frame = selected_frame;
       Vlast_event_frame = internal_last_event_frame;
       /* If we report the quit char as an event,