aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorRichard M. Stallman1997-01-20 02:21:33 +0000
committerRichard M. Stallman1997-01-20 02:21:33 +0000
commitc11d3d177321dd62f364c52e1675c42a486c6cea (patch)
tree0e1a9a7b30e15b17c14a06aa83f777a38572f7a5 /src
parente12c1054457fa9e7c0d20de92a8eeff87f03a8e6 (diff)
downloademacs-c11d3d177321dd62f364c52e1675c42a486c6cea.tar.gz
emacs-c11d3d177321dd62f364c52e1675c42a486c6cea.zip
(Fsignal): Call fatal if no error handlers and no catch.
Diffstat (limited to 'src')
-rw-r--r--src/eval.c10
1 files changed, 9 insertions, 1 deletions
diff --git a/src/eval.c b/src/eval.c
index bf1eaacedd1..97dbf8f1579 100644
--- a/src/eval.c
+++ b/src/eval.c
@@ -1207,6 +1207,7 @@ See also the function `condition-case'.")
1207 extern int gc_in_progress; 1207 extern int gc_in_progress;
1208 extern int waiting_for_input; 1208 extern int waiting_for_input;
1209 Lisp_Object debugger_value; 1209 Lisp_Object debugger_value;
1210 Lisp_Object string;
1210 1211
1211 quit_error_check (); 1212 quit_error_check ();
1212 immediate_quit = 0; 1213 immediate_quit = 0;
@@ -1266,7 +1267,14 @@ See also the function `condition-case'.")
1266 /* If no handler is present now, try to run the debugger, 1267 /* If no handler is present now, try to run the debugger,
1267 and if that fails, throw to top level. */ 1268 and if that fails, throw to top level. */
1268 find_handler_clause (Qerror, conditions, error_symbol, data, &debugger_value); 1269 find_handler_clause (Qerror, conditions, error_symbol, data, &debugger_value);
1269 Fthrow (Qtop_level, Qt); 1270 if (catchlist != 0)
1271 Fthrow (Qtop_level, Qt);
1272
1273 if (! EQ (data, memory_signal_data))
1274 data = Fcons (error_symbol, data);
1275
1276 string = Ferror_message_string (data);
1277 fatal (XSTRING (string)->data, 0, 0);
1270} 1278}
1271 1279
1272/* Return nonzero iff LIST is a non-nil atom or 1280/* Return nonzero iff LIST is a non-nil atom or