[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#30162: 27.0.50; Wrong order of directories in *Deletions*
From: |
Juri Linkov |
Subject: |
bug#30162: 27.0.50; Wrong order of directories in *Deletions* |
Date: |
Tue, 23 Jan 2018 23:56:44 +0200 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/27.0.50 (x86_64-pc-linux-gnu) |
> This is a regression. The order of directories in *Deletions* was right
> in older versions, but not now.
>
> Steps to reproduce:
>
> 0. emacs -Q
> 1. ‘M-!’ mkdir x y z RET
> 2. ‘C-x d’ RET
> 3. ‘D D D’ (select dirs x, y, z for deletion)
> 4. ‘x’ (dired-do-flagged-delete)
>
> Directories in *Deletions* are reversed:
>
> z
> y
> x
>
> It seems this is a result of the commit 9ecbdee, but I can't find
> a related discussion.
>
> I think we should either reverse the list of buffers at the lowest level
> in ‘dired-map-over-marks’ (this might cause backward-compatibility
> issues), or don't call ‘nreverse’ twice and remove ‘nreverse’ from
> ‘dired-internal-do-deletions’.
This patch is for the latter:
diff --git a/lisp/dired.el b/lisp/dired.el
index eebf836..eade11b 100644
--- a/lisp/dired.el
+++ b/lisp/dired.el
@@ -3094,7 +3094,7 @@ dired-internal-do-deletions
(dired-recursive-deletes dired-recursive-deletes)
(trashing (and trash delete-by-moving-to-trash)))
;; canonicalize file list for pop up
- (setq files (nreverse (mapcar #'dired-make-relative files)))
+ (setq files (mapcar #'dired-make-relative files))
(if (dired-mark-pop-up
" *Deletions*" 'delete files dired-deletion-confirmer
(format "%s %s "