Subject: bug#64897: 29.0.91; Bug (and patch) in find-dired-with-command

From: Michael Heerdegen <[email-masked]>
Date: Sun, 06 Aug 2023 01:35:08 +0200

Hello Michael and Warren,

Your change - this part in particular:

| @@ -244,8 +244,8 @@ find-dired-with-command
|      (erase-buffer)
|      (setq default-directory dir)
|      ;; Start the find process.
| -    (shell-command (concat command "&") (current-buffer))
| -    (let ((proc (get-buffer-process (current-buffer))))
| +    (let ((proc (start-file-process-shell-command
| +                 (buffer-name) (current-buffer) command)))
|        ;; Initialize the process marker; it is used by the filter.
|        (move-marker (process-mark proc) (point) (current-buffer))
|        (set-process-filter proc #'find-dired-filter)

causes the following for me:

I am using this setting:

#+begin_src emacs-lisp
(setq find-ls-option
      (setq find-ls-option-default-exec
            '("-exec ls -adhl {} +" . "-adhl")))
#+end_src

and the *Find* buffer now contains lots of lines like

'./Zacher/Mauricio Kagel - Fantasia for Organ.mp4'

or

"./Gideon Klein/Gideon Klein's 'Praeludium,' Played by Arturo Fernandez.mp4"

i.e. lines with file names quoted inside '...' or "...".  These lines
are not functional - dired can't handle them.  I can reproduce this
problem with emacs -Q.  The above setting worked ok before.

Is this expected and my fault or a regression?

TIA,

Michael.