From 1a3d471d87ea459bc2c2d704c5578e6977e68e83 Mon Sep 17 00:00:00 2001 From: Eli Zaretskii Date: Sat, 10 Nov 2018 22:14:42 +0200 Subject: [PATCH] Make 'move-file-to-trash' behave according to the documentation * lisp/files.el (move-file-to-trash): Behave like the doc string says: check whether 'system-move-file-to-trash' is defined before testing that 'trash-directory' is non-nil. (Bug#33335) --- lisp/files.el | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/lisp/files.el b/lisp/files.el index ad032832ec5..0f0c7d1559a 100644 --- a/lisp/files.el +++ b/lisp/files.el @@ -7393,7 +7393,10 @@ Otherwise, trash FILENAME using the freedesktop.org conventions, like the GNOME, KDE and XFCE desktop environments. Emacs only moves files to \"home trash\", ignoring per-volume trashcans." (interactive "fMove file to trash: ") - (cond (trash-directory + ;; If `system-move-file-to-trash' is defined, use it. + (cond ((fboundp 'system-move-file-to-trash) + (system-move-file-to-trash filename)) + (trash-directory ;; If `trash-directory' is non-nil, move the file there. (let* ((trash-dir (expand-file-name trash-directory)) (fn (directory-file-name (expand-file-name filename))) @@ -7412,9 +7415,6 @@ Otherwise, trash FILENAME using the freedesktop.org conventions, (setq new-fn (car (find-backup-file-name new-fn))))) (let (delete-by-moving-to-trash) (rename-file fn new-fn)))) - ;; If `system-move-file-to-trash' is defined, use it. - ((fboundp 'system-move-file-to-trash) - (system-move-file-to-trash filename)) ;; Otherwise, use the freedesktop.org method, as specified at ;; http://freedesktop.org/wiki/Specifications/trash-spec (t -- 2.39.5