Subject: bug#35390: 26.2; [PATCH] `ls-lisp--dired', like `dired', should accept nil DIR-OR-LIST argument

From: Drew Adams <[email-masked]>
Date: Tue, 23 Apr 2019 05:24:56 -0700 (PDT)

The doc of command `dired' does not define the behavior if its DIRNAME
argument is not a string or a cons.  `dired' just passes this arg to
`dired-noselect', and `dired-noselect' starts by doing this:

 (or dir-or-list (setq dir-or-list default-directory))

This means that `dired', via `dired-noselect', handles a nil value for
DIRNAME by using the value of `default-directory' (a string).

`ls-lisp--dired' should do the same - it is a stand-in for `dired'.
Currently it raises an error if passed nil as the directory.  It would
make sense to add this at the beginning of `ls-lisp--dired' (just after
the `interactive' spec):

 (unless dir-or-list (setq dir-or-list  default-directory))

That's the "patch" - just add that line as indicated.

[BTW, the doc string of `dired' has this as its last line, which doesn't
make sense - DIRNAME is either a directory name or a cons of a directory
name and a list of file names:

  "If DIRNAME is already in a Dired buffer"...

I think it's trying to say that if _the directory specified by DIRNAME_
is already shown in a Dired buffer...]

In GNU Emacs 26.2 (build 1, x86_64-w64-mingw32)
 of 2019-04-13
Repository revision: fd1b34bfba8f3f6298df47c8e10b61530426f749
Windowing system distributor `Microsoft Corp.', version 10.0.17134
Configured using:
 `configure --without-dbus --host=x86_64-w64-mingw32
 --without-compress-install 'CFLAGS=-O2 -static -g3''