aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorManuel Giraud2023-10-24 14:51:04 +0200
committerEli Zaretskii2023-11-04 10:03:33 +0200
commitce4a62eece608f13db2449e5d4e2d38f253663c4 (patch)
treee4390cca7704166e9c6b9673cd70a8edd664e74c
parent5ee66620fd2af8c5f356e6e720777e16d6c2c050 (diff)
downloademacs-ce4a62eece608f13db2449e5d4e2d38f253663c4.tar.gz
emacs-ce4a62eece608f13db2449e5d4e2d38f253663c4.zip
Fix desktop-save on remote dired (bug#66697)
Do not gather "misc data" for dired buffer not meant to be desktop saved. lisp/dired.el (dired-desktop-save-p): New function to test if `dired-directory' should be desktop saved. (dired-desktop-buffer-misc-data): Use it.
-rw-r--r--lisp/dired.el36
1 files changed, 22 insertions, 14 deletions
diff --git a/lisp/dired.el b/lisp/dired.el
index 99156b28365..c710e06722f 100644
--- a/lisp/dired.el
+++ b/lisp/dired.el
@@ -4877,22 +4877,30 @@ Ask means pop up a menu for the user to select one of copy, move or link."
4877(eval-when-compile (require 'desktop)) 4877(eval-when-compile (require 'desktop))
4878(declare-function desktop-file-name "desktop" (filename dirname)) 4878(declare-function desktop-file-name "desktop" (filename dirname))
4879 4879
4880(defun dired-desktop-save-p ()
4881 "Should `dired-directory' be desktop saved?"
4882 (if (consp dired-directory)
4883 (not (string-match-p desktop-files-not-to-save (car dired-directory)))
4884 (not (string-match-p desktop-files-not-to-save dired-directory))))
4885
4880(defun dired-desktop-buffer-misc-data (dirname) 4886(defun dired-desktop-buffer-misc-data (dirname)
4881 "Auxiliary information to be saved in desktop file." 4887 "Auxiliary information to be saved in desktop file."
4882 (cons 4888 (when (and (stringp desktop-files-not-to-save)
4883 ;; Value of `dired-directory'. 4889 (dired-desktop-save-p))
4884 (if (consp dired-directory) 4890 (cons
4885 ;; Directory name followed by list of files. 4891 ;; Value of `dired-directory'.
4886 (cons (desktop-file-name (car dired-directory) dirname) 4892 (if (consp dired-directory)
4887 (cdr dired-directory)) 4893 ;; Directory name followed by list of files.
4888 ;; Directory name, optionally with shell wildcard. 4894 (cons (desktop-file-name (car dired-directory) dirname)
4889 (desktop-file-name dired-directory dirname)) 4895 (cdr dired-directory))
4890 ;; Subdirectories in `dired-subdir-alist'. 4896 ;; Directory name, optionally with shell wildcard.
4891 (cdr 4897 (desktop-file-name dired-directory dirname))
4892 (nreverse 4898 ;; Subdirectories in `dired-subdir-alist'.
4893 (mapcar 4899 (cdr
4894 (lambda (f) (desktop-file-name (car f) dirname)) 4900 (nreverse
4895 dired-subdir-alist))))) 4901 (mapcar
4902 (lambda (f) (desktop-file-name (car f) dirname))
4903 dired-subdir-alist))))))
4896 4904
4897(defun dired-restore-desktop-buffer (_file-name 4905(defun dired-restore-desktop-buffer (_file-name
4898 _buffer-name 4906 _buffer-name