master 75441af2c5a: ; Fix last change to 'insert-directory'

Stephen Berman via Mailing list for Emacs changes <[email protected]> Mon, 27 Jul 2026 07:55:18 -0400 (EDT)
Newsgroups gmane.emacs.diffs
Message-ID <[email protected]>
branch: master
commit 75441af2c5a9168114836ec8c4e2cfd80ed2f1c5
Author: Stephen Berman <[email protected]>
Commit: Stephen Berman <[email protected]>

    ; Fix last change to 'insert-directory'
    
    * lisp/files.el (insert-directory): Reuse an existing "*ls error*"
    buffer or, if there is none, generate a new one and make it
    read-only (bug#80499, Message #305).
---
 lisp/files.el | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/lisp/files.el b/lisp/files.el
index 27a69b3fc81..9d5cd3fa30d 100644
--- a/lisp/files.el
+++ b/lisp/files.el
@@ -8502,9 +8502,12 @@ normally equivalent short `-D' option is just passed on to
         ;; error.
         (when (> (file-attribute-size (file-attributes errfile)) 0)
           (defvar dired--ls-error-buffer) ; Pacify byte-compiler.
-          (let ((errbuf (get-buffer-create "*ls error*")))
+          (let ((errbuf (or (get-buffer "*ls error*")
+                            (let ((buf (generate-new-buffer "*ls error*")))
+                              (with-current-buffer buf
+                                (setq buffer-read-only t))
+                              buf))))
             (with-current-buffer errbuf
-              (setq buffer-read-only t)
               (let ((inhibit-read-only t))
                 (erase-buffer)
                 (insert-file-contents errfile)))