diff options
| author | Richard M. Stallman | 2004-12-13 18:56:52 +0000 |
|---|---|---|
| committer | Richard M. Stallman | 2004-12-13 18:56:52 +0000 |
| commit | 08fdede61348f8c3cecc8d3b6506157df7c38843 (patch) | |
| tree | 2d612b7653a1de291b3712d8289b0cea1dce9422 /src | |
| parent | 913c5633d7740b978f8a3df24dc6b15eb71f7084 (diff) | |
| download | emacs-08fdede61348f8c3cecc8d3b6506157df7c38843.tar.gz emacs-08fdede61348f8c3cecc8d3b6506157df7c38843.zip | |
(QUIT): Check for Vthrow_on_input.
(Vthrow_on_input): Declare it.
Diffstat (limited to 'src')
| -rw-r--r-- | src/lisp.h | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/src/lisp.h b/src/lisp.h index 3a7ebfac381..3dddd6179b2 100644 --- a/src/lisp.h +++ b/src/lisp.h | |||
| @@ -1768,11 +1768,15 @@ extern char *stack_bottom; | |||
| 1768 | #ifdef SYNC_INPUT | 1768 | #ifdef SYNC_INPUT |
| 1769 | extern void handle_async_input P_ ((void)); | 1769 | extern void handle_async_input P_ ((void)); |
| 1770 | extern int interrupt_input_pending; | 1770 | extern int interrupt_input_pending; |
| 1771 | |||
| 1771 | #define QUIT \ | 1772 | #define QUIT \ |
| 1772 | do { \ | 1773 | do { \ |
| 1773 | if (!NILP (Vquit_flag) && NILP (Vinhibit_quit)) \ | 1774 | if (!NILP (Vquit_flag) && NILP (Vinhibit_quit)) \ |
| 1774 | { \ | 1775 | { \ |
| 1776 | Lisp_Object flag = Vquit_flag; \ | ||
| 1775 | Vquit_flag = Qnil; \ | 1777 | Vquit_flag = Qnil; \ |
| 1778 | if (EQ (Vthrow_on_input, flag)) \ | ||
| 1779 | Fthrow (Vthrow_on_input, Qnil); \ | ||
| 1776 | Fsignal (Qquit, Qnil); \ | 1780 | Fsignal (Qquit, Qnil); \ |
| 1777 | } \ | 1781 | } \ |
| 1778 | else if (interrupt_input_pending) \ | 1782 | else if (interrupt_input_pending) \ |
| @@ -1785,7 +1789,10 @@ extern int interrupt_input_pending; | |||
| 1785 | do { \ | 1789 | do { \ |
| 1786 | if (!NILP (Vquit_flag) && NILP (Vinhibit_quit)) \ | 1790 | if (!NILP (Vquit_flag) && NILP (Vinhibit_quit)) \ |
| 1787 | { \ | 1791 | { \ |
| 1792 | Lisp_Object flag = Vquit_flag; \ | ||
| 1788 | Vquit_flag = Qnil; \ | 1793 | Vquit_flag = Qnil; \ |
| 1794 | if (EQ (Vthrow_on_input, flag)) \ | ||
| 1795 | Fthrow (Vthrow_on_input, Qnil); \ | ||
| 1789 | Fsignal (Qquit, Qnil); \ | 1796 | Fsignal (Qquit, Qnil); \ |
| 1790 | } \ | 1797 | } \ |
| 1791 | } while (0) | 1798 | } while (0) |
| @@ -2876,6 +2883,7 @@ extern struct kboard *echo_kboard; | |||
| 2876 | extern void cancel_echoing P_ ((void)); | 2883 | extern void cancel_echoing P_ ((void)); |
| 2877 | extern Lisp_Object Qdisabled, QCfilter; | 2884 | extern Lisp_Object Qdisabled, QCfilter; |
| 2878 | extern Lisp_Object Vtty_erase_char, Vhelp_form, Vtop_level; | 2885 | extern Lisp_Object Vtty_erase_char, Vhelp_form, Vtop_level; |
| 2886 | extern Lisp_Object Vthrow_on_input; | ||
| 2879 | extern int input_pending; | 2887 | extern int input_pending; |
| 2880 | EXFUN (Fdiscard_input, 0); | 2888 | EXFUN (Fdiscard_input, 0); |
| 2881 | EXFUN (Frecursive_edit, 0); | 2889 | EXFUN (Frecursive_edit, 0); |