Subject: Re: bug#44682: 28.0.50; dired on file with space first: dired-get-file-for-visit: File no longer exists; type ‘g’ to update Dired buffer

From: Jean Louis <[email-masked]>
Date: Mon, 16 Nov 2020 20:57:49 +0300

* Eli Zaretskii <[email-masked]> [2020-11-16 20:21]:
> > Date: Mon, 16 Nov 2020 15:21:15 +0300
> > From: Jean Louis <[email-masked]>
> > 
> > The directory folder has probably a space in the name. It is hard to
> > know for me who made this directory and how. People are using their
> > GUI.
> > 
> > Error in Dired is:
> > dired-get-file-for-visit: File no longer exists; type ‘g’ to update Dired buffer
> > 
> > It should be possible to handle such directories.
> > 
> >   /scp:root@room:/home/study/Movies:
> >   total used in directory 879904 available 26.5 GiB
> >   drwxr-xr-x  2 study study      4096 Nov 14 14:47  folder
> >   drwxr-xr-x  4 study study      4096 Nov 16 15:17 .
> >   drwx------ 20 study study      4096 Nov 14 14:47 ..
> > C -rw-------  1 study study 901000535 Nov 16 14:41 Ralph Breaks the Internet.mkv
> >   drwxr-xr-x  2 study study      4096 Sep 21 03:17 Zathura A Space Adventure (2005)
> 
> Please tell what you tried that triggered this error, and on which
> name in the buffer.  Without this information, I don't see how we can
> begin investigating.  FWIW, directories with embedded spaces work for
> me in Dired, at least in general.

The buffer is on the above /scp:root@room:/home/study/Movies:

At first line there is folder indented for one space to the
right. Cursor is on that line.

If I press RET on that line I got that error:

dired-get-file-for-visit: File no longer exists; type ‘g’ to update Dired buffer

Typing g does does not help.

Space is at beginning of file, not in the middle of file.

When checking on local file system it works well. When checking on
Tramp scp file system that is where error comes. Other computer is on
GNU Hyperbola/Linux-libre, same as this one.

Debugger entered--Lisp error: (error "File no longer exists; type ‘g’ to update Dired bu...")
  signal(error ("File no longer exists; type ‘g’ to update Dired bu..."))
  error("File no longer exists; type `g' to update Dired bu...")
  dired-get-file-for-visit()
  dired-find-file()
  funcall-interactively(dired-find-file)
  call-interactively(dired-find-file nil nil)
  command-execute(dired-find-file)