aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJuanma Barranquero2014-02-22 03:10:49 +0100
committerJuanma Barranquero2014-02-22 03:10:49 +0100
commite59fa9adb3e9e2ec7993267667c6a31d2cf57fdd (patch)
treee0c9963bd922f7a200cd6cf9322fd1fef1d3da14
parentd3cac061271e336722993c90985e5a29a3d01254 (diff)
downloademacs-e59fa9adb3e9e2ec7993267667c6a31d2cf57fdd.tar.gz
emacs-e59fa9adb3e9e2ec7993267667c6a31d2cf57fdd.zip
lisp/desktop.el: Do not fail when desktop-files-not-to-save is nil.
-rw-r--r--lisp/ChangeLog6
-rw-r--r--lisp/desktop.el36
2 files changed, 25 insertions, 17 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog
index 82c24f11643..6ca16625826 100644
--- a/lisp/ChangeLog
+++ b/lisp/ChangeLog
@@ -1,3 +1,9 @@
12014-02-22 Juanma Barranquero <lekktu@gmail.com>
2
3 * desktop.el (desktop-save-buffer-p): Do not fail when
4 desktop-files-not-to-save is nil. Return t for true result
5 as the doc says.
6
12014-02-22 Daniel Colascione <dancol@dancol.org> 72014-02-22 Daniel Colascione <dancol@dancol.org>
2 8
3 * net/secrets.el (secrets-create-item,secrets-search-items): Check 9 * net/secrets.el (secrets-create-item,secrets-search-items): Check
diff --git a/lisp/desktop.el b/lisp/desktop.el
index 6ec3ceed9df..69c17015030 100644
--- a/lisp/desktop.el
+++ b/lisp/desktop.el
@@ -878,23 +878,25 @@ FILENAME is the visited file name, BUFNAME is the buffer name, and
878MODE is the major mode. 878MODE is the major mode.
879\n\(fn FILENAME BUFNAME MODE)" 879\n\(fn FILENAME BUFNAME MODE)"
880 (let ((case-fold-search nil) 880 (let ((case-fold-search nil)
881 dired-skip) 881 (no-regexp-to-check (not (stringp desktop-files-not-to-save)))
882 (and (not (and (stringp desktop-buffers-not-to-save) 882 dired-skip)
883 (not filename) 883 (and (or filename
884 (string-match-p desktop-buffers-not-to-save bufname))) 884 (not (stringp desktop-buffers-not-to-save))
885 (not (memq mode desktop-modes-not-to-save)) 885 (not (string-match-p desktop-buffers-not-to-save bufname)))
886 ;; FIXME this is broken if desktop-files-not-to-save is nil. 886 (not (memq mode desktop-modes-not-to-save))
887 (or (and filename 887 (or (and filename
888 (stringp desktop-files-not-to-save) 888 (or no-regexp-to-check
889 (not (string-match-p desktop-files-not-to-save filename))) 889 (not (string-match-p desktop-files-not-to-save filename))))
890 (and (memq mode '(dired-mode vc-dir-mode)) 890 (and (memq mode '(dired-mode vc-dir-mode))
891 (with-current-buffer bufname 891 (or no-regexp-to-check
892 (not (setq dired-skip 892 (not (setq dired-skip
893 (string-match-p desktop-files-not-to-save 893 (with-current-buffer bufname
894 default-directory))))) 894 (string-match-p desktop-files-not-to-save
895 (and (null filename) 895 default-directory))))))
896 (null dired-skip) ; bug#5755 896 (and (null filename)
897 (with-current-buffer bufname desktop-save-buffer)))))) 897 (null dired-skip) ; bug#5755
898 (with-current-buffer bufname desktop-save-buffer)))
899 t)))
898 900
899;; ---------------------------------------------------------------------------- 901;; ----------------------------------------------------------------------------
900(defun desktop-file-name (filename dirname) 902(defun desktop-file-name (filename dirname)