emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] master 2634d86 1/2: Let display-warning work during bootst


From: Noam Postavsky
Subject: [Emacs-diffs] master 2634d86 1/2: Let display-warning work during bootstrap
Date: Tue, 12 Jun 2018 07:47:40 -0400 (EDT)

branch: master
commit 2634d867b66ddff568048ce664f003ae8950bdfa
Author: Noam Postavsky <address@hidden>
Commit: Noam Postavsky <address@hidden>

    Let display-warning work during bootstrap
    
    * lisp/emacs-lisp/warnings.el (display-warning): Only call
    `special-mode' and `newline' if they are `fbound'.
---
 lisp/emacs-lisp/warnings.el | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

diff --git a/lisp/emacs-lisp/warnings.el b/lisp/emacs-lisp/warnings.el
index 6657331..c4d97ce 100644
--- a/lisp/emacs-lisp/warnings.el
+++ b/lisp/emacs-lisp/warnings.el
@@ -241,11 +241,15 @@ See also `warning-series', `warning-prefix-function' and
               (old (get-buffer buffer-name))
               (buffer (or old (get-buffer-create buffer-name)))
               (level-info (assq level warning-levels))
+               ;; `newline' may be unbound during bootstrap.
+               (newline (if (fboundp 'newline) #'newline
+                          (lambda () (insert "\n"))))
               start end)
          (with-current-buffer buffer
            ;; If we created the buffer, disable undo.
            (unless old
-             (special-mode)
+             (when (fboundp 'special-mode) ; Undefined during bootstrap.
+                (special-mode))
              (setq buffer-read-only t)
              (setq buffer-undo-list t))
            (goto-char (point-max))
@@ -256,7 +260,7 @@ See also `warning-series', `warning-prefix-function' and
                        (funcall warning-series)))))
            (let ((inhibit-read-only t))
              (unless (bolp)
-               (newline))
+               (funcall newline))
              (setq start (point))
              (if warning-prefix-function
                  (setq level-info (funcall warning-prefix-function
@@ -264,7 +268,7 @@ See also `warning-series', `warning-prefix-function' and
              (insert (format (nth 1 level-info)
                              (format warning-type-format typename))
                      message)
-             (newline)
+              (funcall newline)
              (when (and warning-fill-prefix (not (string-match "\n" message)))
                (let ((fill-prefix warning-fill-prefix)
                      (fill-column 78))



reply via email to

[Prev in Thread] Current Thread [Next in Thread]