aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKarl Heuer1995-03-08 00:45:37 +0000
committerKarl Heuer1995-03-08 00:45:37 +0000
commita9f16aa9867d71f14ccda18fe83c8b6e7ebabec9 (patch)
tree5509218c96f3bee19f3ccee436de466e86682790
parent521fffcd6f37b957885965df82deb6d84c15002e (diff)
downloademacs-a9f16aa9867d71f14ccda18fe83c8b6e7ebabec9.tar.gz
emacs-a9f16aa9867d71f14ccda18fe83c8b6e7ebabec9.zip
(cmd_error): Bind Vprint_level and Vprint_length.
-rw-r--r--src/keyboard.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/keyboard.c b/src/keyboard.c
index b8c653b8fd7..3f3ca70d3cb 100644
--- a/src/keyboard.c
+++ b/src/keyboard.c
@@ -444,6 +444,8 @@ Lisp_Object Qextended_command_history;
444 444
445Lisp_Object Qpolling_period; 445Lisp_Object Qpolling_period;
446 446
447extern Lisp_Object Vprint_level, Vprint_length;
448
447/* Address (if not 0) of EMACS_TIME to zero out if a SIGIO interrupt 449/* Address (if not 0) of EMACS_TIME to zero out if a SIGIO interrupt
448 happens. */ 450 happens. */
449EMACS_TIME *input_available_clear_time; 451EMACS_TIME *input_available_clear_time;
@@ -765,6 +767,8 @@ Lisp_Object
765cmd_error (data) 767cmd_error (data)
766 Lisp_Object data; 768 Lisp_Object data;
767{ 769{
770 Lisp_Object old_level, old_length;
771
768 Vstandard_output = Qt; 772 Vstandard_output = Qt;
769 Vstandard_input = Qt; 773 Vstandard_input = Qt;
770 Vexecuting_macro = Qnil; 774 Vexecuting_macro = Qnil;
@@ -773,7 +777,15 @@ cmd_error (data)
773 clear_prefix_arg (); 777 clear_prefix_arg ();
774 cancel_echoing (); 778 cancel_echoing ();
775 } 779 }
780
781 /* Avoid unquittable loop if data contains a circular list. */
782 old_level = Vprint_level;
783 old_length = Vprint_length;
784 XSETFASTINT(Vprint_level, 10);
785 XSETFASTINT(Vprint_length, 10);
776 cmd_error_internal (data, 0); 786 cmd_error_internal (data, 0);
787 Vprint_level = old_level;
788 Vprint_length = old_length;
777 789
778 Vquit_flag = Qnil; 790 Vquit_flag = Qnil;
779 791