From: Stefan Monnier Date: Wed, 6 Dec 2017 01:53:28 +0000 (-0500) Subject: * lisp/files.el (find-alternate-file): Use selected-window even if dedicated X-Git-Tag: emacs-27.0.90~6082 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=623d37a1f2b805e9d3d1954d762ee1dada736991;p=emacs.git * lisp/files.el (find-alternate-file): Use selected-window even if dedicated --- diff --git a/lisp/files.el b/lisp/files.el index 205001e5d5a..a7ad40b76cd 100644 --- a/lisp/files.el +++ b/lisp/files.el @@ -1801,7 +1801,11 @@ killed." (setq buffer-file-truename nil) ;; Likewise for dired buffers. (setq dired-directory nil) - (find-file filename wildcards)) + ;; Don't use `find-file' because it may end up using another window + ;; in some corner cases, e.g. when the selected window is + ;; softly-dedicated. + (let ((newbuf (find-file-noselect filename wildcards))) + (switch-to-buffer newbuf))) (when (eq obuf (current-buffer)) ;; This executes if find-file gets an error ;; and does not really find anything.