]> code.delx.au - gnu-emacs/commitdiff
(command-line): Set init-file-had-error to t or nil.
authorRichard M. Stallman <rms@gnu.org>
Mon, 22 Nov 1993 06:35:37 +0000 (06:35 +0000)
committerRichard M. Stallman <rms@gnu.org>
Mon, 22 Nov 1993 06:35:37 +0000 (06:35 +0000)
(command-line-1): Inhibit startup message if init-file-had-error.

lisp/startup.el

index cb701a3d6ce005b64516f6242396e4234fd79485..7ba3a017b736305069d059b20194597f6c12d035 100644 (file)
@@ -129,6 +129,8 @@ this variable, if non-nil; 2. `~/.emacs'; 3. `default.el'.")
 
 (defvar init-file-debug nil)
 
+(defvar init-file-had-error nil)
+
 (defun normal-top-level ()
   (if command-line-processed
       (message "Back to top level.")
@@ -271,11 +273,14 @@ this variable, if non-nil; 2. `~/.emacs'; 3. `default.el'.")
        ;; Do this without a condition-case if the user wants to debug.
        (funcall inner)
       (condition-case error
-         (funcall inner)
+         (progn
+           (funcall inner)
+           (setq init-file-had-error nil))
        (error (message "Error in init file: %s%s%s"
                        (get (car error) 'error-message)
                        (if (cdr error) ": ")
-                       (mapconcat 'prin1-to-string (cdr error) ", "))))))
+                       (mapconcat 'prin1-to-string (cdr error) ", "))
+              (setq init-file-had-error t)))))
 
   (run-hooks 'after-init-hook)
 
@@ -304,7 +309,7 @@ this variable, if non-nil; 2. `~/.emacs'; 3. `default.el'.")
   (if noninteractive (kill-emacs t)))
 
 (defun command-line-1 (command-line-args-left)
-  (or noninteractive (input-pending-p)
+  (or noninteractive (input-pending-p) init-file-had-error
       (message (if (eq (key-binding "\C-h\C-p") 'describe-project)
                   "For information about the GNU Project and its goals, type C-h C-p."
                 (substitute-command-keys