Subject: bug#47058: 28.0.50; Dired Z: insert-directory: Reading directory: No such file or directory, CrossLine_linux_x86

From: Arthur Miller <[email-masked]>
Date: Wed, 01 Sep 2021 00:12:24 +0200

Marco Centurion <[email-masked]> writes:

> I can confirm that this bug is present and pretty easy to reproduce.
> Steps to reproduce:
>
> ----
> $ touch test1
> $ tar czf test.tar.gz test1
> $ rm test1
>
> In dired, press Z (`dired-do-compress`) when the point is on test.tar.gz
> ----
I just did all those steps in emacs -Q, and I can not confirm any errors. I
named files exactly as you show there, and decompressed file is correctly named
'test1'.

I tested in two different directories, you three shell commands from terminal
(st in my case), and Z from dired created correctly test1.

I also test M-! dance from Emacs, and even in that case everythign worked
correctly.

> The error doesn't seem to be only because there's only a file inside the
> compressed one, but also that the name of the decompressed file doesn't
> coincide with the compressed one.  If one compresses and decompresses a
> single file, dired works exactly as expected.
>
> Also, when decompressing a `tar.gz` file, the dired buffer doesn't show
> the tar.gz after pressing Z, which seems to imply that the original file
> was deleted, but that's not the case.

Press 'g'.

Observe that, if you do it while dired buffer is open, you have to manually
revert buffer after some operations ('g' key). Not all operations trigger
revert. I don't know exactly which ones do and which ones do not. This especialy
case if you update directory outside of Emacs.