changeset 14218:346d4cf758f5

(run_hook_with_args): Do nothing if Vrun_hooks is nil.
author Richard M. Stallman <rms@gnu.org>
date Thu, 18 Jan 1996 08:40:29 +0000
parents 673d1913844b
children 22324381ef74
files src/eval.c
diffstat 1 files changed, 17 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/src/eval.c	Thu Jan 18 08:38:16 1996 +0000
+++ b/src/eval.c	Thu Jan 18 08:40:29 1996 +0000
@@ -1083,6 +1083,16 @@
   return val;
 }
 
+/* Call the function BFUN with no arguments, catching errors within it
+   according to HANDLERS.  If there is an error, call HFUN with
+   one argument which is the data that describes the error:
+   (SIGNALNAME . DATA)
+
+   HANDLERS can be a list of conditions to catch.
+   If HANDLERS is Qt, catch all errors.
+   If HANDLERS is Qerror, catch all errors
+   but allow the debugger to run if that is enabled.  */
+
 Lisp_Object
 internal_condition_case (bfun, handlers, hfun)
      Lisp_Object (*bfun) ();
@@ -1124,6 +1134,8 @@
   return val;
 }
 
+/* Like internal_condition_case but call HFUN with ARG as its argument.  */
+
 Lisp_Object
 internal_condition_case_1 (bfun, arg, handlers, hfun)
      Lisp_Object (*bfun) ();
@@ -1970,6 +1982,11 @@
   Lisp_Object sym, val, ret;
   struct gcpro gcpro1, gcpro2;
 
+  /* If we are dying or still initializing,
+     don't do anything--it would probably crash if we tried.  */
+  if (NILP (Vrun_hooks))
+    return;
+
   sym = args[0];
   val = find_symbol_value (sym);
   ret = (cond == until_failure ? Qt : Qnil);