changeset 72760:06f1e0aa1de0

(normal-splash-screen): Don't display the buffer if we'll kill it right away anyway.
author Stefan Monnier <monnier@iro.umontreal.ca>
date Sat, 09 Sep 2006 19:21:31 +0000
parents 1bc06d26b6b1
children a15622a85c05
files lisp/ChangeLog lisp/startup.el
diffstat 2 files changed, 23 insertions(+), 18 deletions(-) [+]
line wrap: on
line diff
--- a/lisp/ChangeLog	Sat Sep 09 18:26:56 2006 +0000
+++ b/lisp/ChangeLog	Sat Sep 09 19:21:31 2006 +0000
@@ -1,3 +1,8 @@
+2006-09-09  Stefan Monnier  <monnier@iro.umontreal.ca>
+
+	* startup.el (normal-splash-screen): Don't display the buffer if we'll
+	kill it right away anyway.
+
 2006-09-09  Eli Zaretskii  <eliz@gnu.org>
 
 	* international/codepage.el (cp850-decode-table): Fix a few codes.
@@ -21,14 +26,12 @@
 	(locate): Set buffer local value.  Use current buffer if it is
 	in Locate mode.
 	(locate-mode): Disable undo here.
-	(locate-do-setup): Use locate-current-filter from buffer to be
-	killed. 
-	(locate-update): Use locate-current-search and
-	locate-current-filter.
+	(locate-do-setup): Use locate-current-filter from buffer to be killed.
+	(locate-update): Use locate-current-search and locate-current-filter.
 
 2006-09-08  David Kastrup  <dak@gnu.org>
 
-	* desktop.el (desktop-read): when loading a desktop, disable
+	* desktop.el (desktop-read): When loading a desktop, disable
 	saving it while the load progresses, and switch off a pending lazy
 	load by calling `desktop-lazy-abort'.
 
@@ -73,8 +76,7 @@
 
 2006-09-08  Carsten Dominik  <dominik@science.uva.nl>
 
-	* textmodes/org.el (org-dblock-write:clocktable): Avoid infinite
-	loop.
+	* textmodes/org.el (org-dblock-write:clocktable): Avoid infinite loop.
 
 2006-09-08  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
 
--- a/lisp/startup.el	Sat Sep 09 18:26:56 2006 +0000
+++ b/lisp/startup.el	Sat Sep 09 19:21:31 2006 +0000
@@ -1386,7 +1386,7 @@
 		    minor-mode-map-alist old-minor-mode-map-alist
 		    emulation-mode-map-alists old-emulation-mode-map-alists)
 	      (kill-buffer splash-buffer)))))
-    ;; If hide-on-input is non-nil, don't hide the buffer on input.
+    ;; If hide-on-input is nil, don't hide the buffer on input.
     (if (or (window-minibuffer-p)
 	    (window-dedicated-p (selected-window)))
 	(pop-to-buffer (current-buffer))
@@ -1586,17 +1586,20 @@
 	  (if (and view-read-only (not view-mode))
 	      (view-mode-enter nil 'kill-buffer))
           (goto-char (point-min))
-	  (if (or (window-minibuffer-p)
-		  (window-dedicated-p (selected-window)))
-	      ;; If hide-on-input is nil, creating a new frame will
-	      ;; generate enough events that the subsequent `sit-for'
-	      ;; will immediately return anyway.
-	      (pop-to-buffer (current-buffer))
-	    (if hide-on-input
+          (if hide-on-input
+              (if (or (window-minibuffer-p)
+                      (window-dedicated-p (selected-window)))
+                  ;; If hide-on-input is nil, creating a new frame will
+                  ;; generate enough events that the subsequent `sit-for'
+                  ;; will immediately return anyway.
+                  nil ;; (pop-to-buffer (current-buffer))
 		(save-window-excursion
-		  (switch-to-buffer (current-buffer))
-		  (sit-for 120))
-	      (switch-to-buffer (current-buffer)))))
+                  (switch-to-buffer (current-buffer))
+		  (sit-for 120)))
+          (condition-case nil
+              (switch-to-buffer (current-buffer))
+            ;; In case the window is dedicated or something.
+            (error (pop-to-buffer (current-buffer))))))
       ;; Unwind ... ensure splash buffer is killed
       (if hide-on-input
 	  (kill-buffer "GNU Emacs")))))