Subject: bug#17927: closed (Re: bug#17927: 24.3.92; Warnings for init file are not visible after loading the desktop)

From: [email-masked] (GNU bug Tracking System)
Date: Tue, 08 Jul 2014 09:19:03 +0000

Your bug report

#17927: 24.3.92; Warnings for init file are not visible after loading the desktop

which was filed against the emacs package, has been closed.

The explanation is attached below, along with your original report.
If you require more details, please reply to [email-masked].

-- 
17927: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=17927
GNU Bug Tracking System
Contact [email-masked] with problems

Subject: Re: bug#17927: 24.3.92; Warnings for init file are not visible after loading the desktop
From: Juri Linkov <[email-masked]>
To: [email-masked]
Date: Tue, 08 Jul 2014 12:17:35 +0300
List-Id: <debbugs-submit.debbugs.gnu.org>

Version: 24.3.92

> When an error occurs while loading the init file, the
> *Warnings* buffer is displayed but hidden immediately
> when the desktop restores the previous window configuration
> by running `desktop-read' from `after-init-hook'.
>
> A possible solution is to postpone displaying the
> *Warnings* buffer to the end of `after-init-hook':

Fixed in the emacs-24 branch since it's a regression.

Subject: 24.3.92; Warnings for init file are not visible after loading the desktop
From: Juri Linkov <[email-masked]>
To: [email-masked]
Date: Fri, 04 Jul 2014 02:22:19 +0300
List-Id: <debbugs-submit.debbugs.gnu.org>

When an error occurs while loading the init file, the
*Warnings* buffer is displayed but hidden immediately
when the desktop restores the previous window configuration
by running `desktop-read' from `after-init-hook'.

A possible solution is to postpone displaying the
*Warnings* buffer to the end of `after-init-hook':

=== modified file 'lisp/startup.el'
--- lisp/startup.el	2014-06-08 23:41:43 +0000
+++ lisp/startup.el	2014-07-03 23:15:54 +0000
@@ -1182,6 +1182,9 @@ (defun command-line ()
 		(funcall inner)
 		(setq init-file-had-error nil))
 	    (error
+	     (add-hook
+	      'after-init-hook
+	      (lambda ()
 	     (display-warning
 	      'initialization
 	      (format "An error occurred while loading `%s':\n\n%s%s%s\n\n\
@@ -1193,7 +1196,8 @@ (defun command-line ()
 		      (if (cdr error) ": " "")
 		      (mapconcat (lambda (s) (prin1-to-string s t))
                                  (cdr error) ", "))
-	      :warning)
+		 :warning))
+	      t)
 	     (setq init-file-had-error t))))
 
       (if (and deactivate-mark transient-mark-mode)