Subject: bug#38707: dired-do-rename doesn't check for "/" !

From: 積丹尼 Dan Jacobson <[email-masked]>
Date: Mon, 23 Dec 2019 00:37:26 +0800

R runs the command dired-do-rename (found in dired-mode-map), which is
an interactive autoloaded compiled Lisp function in ‘dired-aux.el’.

But it has a big bug.

Let's say you tell it to rename qqq to "xxx/yyy/zzz/".

And it works.

You get xxx/yyy/zzz/qqq

But if there is no directory zzz,
then one day you will discover you got

xxx/yyy/qqq .

Real "mv" doesn't have this bug.

$ mv k /tmp/p/
mv: cannot create regular file '/tmp/p/': Not a directory

dired-do-rename perhaps under the hood does the "mv" action, but instead
of reporting the failure, tries again with the final slash removed!

emacs-version "26.3"