Avoid segfaults due to invalid selected-window's buffer
* lisp/startup.el (initial-scratch-message): Don't use \\[...] commands for substitute-command-keys. * lisp/simple.el (get-scratch-buffer-create): Don't call substitute-command-keys on initial-scratch-message, to avoid signaling an error in rare cases. (Bug#60096)
This commit is contained in:
parent
99aa00e6e3
commit
3b618d0e3e
2 changed files with 7 additions and 2 deletions
|
@ -10683,7 +10683,12 @@ too short to have a dst element.
|
||||||
;; we just created it.
|
;; we just created it.
|
||||||
(with-current-buffer scratch
|
(with-current-buffer scratch
|
||||||
(when initial-scratch-message
|
(when initial-scratch-message
|
||||||
(insert (substitute-command-keys initial-scratch-message))
|
;; We used to run this through substitute-command-keys,
|
||||||
|
;; but that might be unsafe in some rare cases, and this
|
||||||
|
;; function must never fail and signal an error, because
|
||||||
|
;; it is called from other_buffer_safely, which must
|
||||||
|
;; always produce a valid buffer.
|
||||||
|
(insert initial-scratch-message)
|
||||||
(set-buffer-modified-p nil))
|
(set-buffer-modified-p nil))
|
||||||
(funcall initial-major-mode))
|
(funcall initial-major-mode))
|
||||||
scratch)))
|
scratch)))
|
||||||
|
|
|
@ -1669,7 +1669,7 @@ Changed settings will be marked as \"CHANGED outside of Customize\"."
|
||||||
|
|
||||||
(defcustom initial-scratch-message (purecopy "\
|
(defcustom initial-scratch-message (purecopy "\
|
||||||
;; This buffer is for text that is not saved, and for Lisp evaluation.
|
;; This buffer is for text that is not saved, and for Lisp evaluation.
|
||||||
;; To create a file, visit it with \\[find-file] and enter text in its buffer.
|
;; To create a file, visit it with \"C-x C-f\" and enter text in its buffer.
|
||||||
|
|
||||||
")
|
")
|
||||||
"Initial documentation displayed in *scratch* buffer at startup.
|
"Initial documentation displayed in *scratch* buffer at startup.
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue