diff options
| author | Manuel Giraud | 2023-10-24 14:51:04 +0200 |
|---|---|---|
| committer | Eli Zaretskii | 2023-11-04 10:03:33 +0200 |
| commit | ce4a62eece608f13db2449e5d4e2d38f253663c4 (patch) | |
| tree | e4390cca7704166e9c6b9673cd70a8edd664e74c | |
| parent | 5ee66620fd2af8c5f356e6e720777e16d6c2c050 (diff) | |
| download | emacs-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.el | 36 |
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 |