Subject: bug#48177: 28.0.50; process-file doesn't correctly handle quoted file names for INFILE

From: Philipp Stephani <[email-masked]>
Date: Mon, 3 May 2021 15:59:52 +0200

Am Mo., 3. Mai 2021 um 15:51 Uhr schrieb Michael Albinus
<[email-masked]>:
>
> Philipp Stephani <[email-masked]> writes:
>
> >> > Evaluate something like
> >> >
> >> > (process-file "/:/bin/true" "/:/dev/null")
> >> >
> >> > This gives an error
> >> >
> >> > (file-missing "Opening process input file" "No such file or directory" "/:/dev/null")
> >> >
> >> > Other magic filenames for INFILE (such as "/ssh:localhost:/dev/null")
> >> > work as expected.  The docstring for `process-file' says that INFILE is
> >> > handled by filename handlers, so I think this should work for quoted
> >> > filenames as well.
> >> >
> >>
> >> Same for
> >> (process-file "/:/bin/true" nil '((:file "/:/dev/null") "/dev/null"))
> >
> > Other forms that I think should work, but fail:
> >
> > (let ((default-directory "/:/usr/"))
> >   (process-file "/:/bin/true" nil '(t "/:/dev/null")))
> >
> > (let ((temporary-file-directory "/:/tmp/"))
> >   (process-file "/:/bin/true" nil '(t "/dev/null")))
>
> The appended patch shall fix this, could you pls test?

Yes, thanks!