aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/keyboard.c21
1 files changed, 8 insertions, 13 deletions
diff --git a/src/keyboard.c b/src/keyboard.c
index e2f2b74cd6b..0647d532867 100644
--- a/src/keyboard.c
+++ b/src/keyboard.c
@@ -1202,24 +1202,19 @@ cmd_error_internal (data, context)
1202 else 1202 else
1203 { 1203 {
1204 Fdiscard_input (); 1204 Fdiscard_input ();
1205 message_log_maybe_newline ();
1205 bitch_at_user (); 1206 bitch_at_user ();
1206 stream = Qt; 1207 stream = Qt;
1207
1208 /* If we know from where the error was signaled, show it in
1209 *Messages*. */
1210 if (!NILP (Vsignaling_function) && SYMBOLP (Vsignaling_function))
1211 {
1212 const char *name = SDATA (SYMBOL_NAME (Vsignaling_function));
1213 message_dolog (name, strlen (name), 0, 0);
1214 message_dolog (": ", 2, 0, 0);
1215 Vsignaling_function = Qnil;
1216 }
1217 } 1208 }
1218 1209
1219 if (context != 0) 1210 /* The immediate context is not interesting for Quits,
1220 write_string_1 (context, -1, stream); 1211 since they are asyncronous. */
1212 if (EQ (XCAR (data), Qquit))
1213 Vsignaling_function = Qnil;
1214
1215 print_error_message (data, stream, context, Vsignaling_function);
1221 1216
1222 print_error_message (data, stream); 1217 Vsignaling_function = Qnil;
1223 1218
1224 /* If the window system or terminal frame hasn't been initialized 1219 /* If the window system or terminal frame hasn't been initialized
1225 yet, or we're in -batch mode, this error should cause Emacs to exit. */ 1220 yet, or we're in -batch mode, this error should cause Emacs to exit. */