[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: |
Wed, 24 Jan 2018 23:44:25 +0200 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/27.0.50 (x86_64-pc-linux-gnu) |
Done.
>> 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 "