+2011-09-30 Martin Rudalics <rudalics@gmx.at>
+
+ * startup.el (command-line-1): Fix last fix by inserting
+ initial-scratch-message into *scratch* before displaying it.
+ (Bug#9626) and (Bug#9636)
+
2011-09-29 Eli Zaretskii <eliz@gnu.org>
* simple.el (line-move): If auto-hscroll-mode is disabled and the
;; abort later.
(unless (frame-live-p (selected-frame)) (kill-emacs nil))))))
- (when initial-buffer-choice
- (cond ((eq initial-buffer-choice t)
- (switch-to-buffer (get-buffer-create "*scratch*")))
- ((stringp initial-buffer-choice)
- (find-file initial-buffer-choice))))
+ (when (eq initial-buffer-choice t)
+ ;; When initial-buffer-choice equals t make sure that *scratch*
+ ;; exists.
+ (get-buffer-create "*scratch*"))
;; If *scratch* exists and is empty, insert initial-scratch-message.
+ ;; Do this before switching to *scratch* below to handle bug#9605.
(and initial-scratch-message
(get-buffer "*scratch*")
(with-current-buffer "*scratch*"
(when (zerop (buffer-size))
- ;; Insert before markers to make sure that window-point
- ;; appears at end of buffer when *scratch* is displayed
- ;; (Bug#9605).
- (insert-before-markers initial-scratch-message)
+ (insert initial-scratch-message)
(set-buffer-modified-p nil))))
+ (when initial-buffer-choice
+ (cond ((eq initial-buffer-choice t)
+ (switch-to-buffer (get-buffer-create "*scratch*")))
+ ((stringp initial-buffer-choice)
+ (find-file initial-buffer-choice))))
+
(if (or inhibit-startup-screen
initial-buffer-choice
noninteractive