Tom Lane wrote:
> Bruce Momjian <bruce@momjian.us> writes:
> >> Hmm, that suggests that our code works *only* if there's white space in
> >> all the paths !? Seems unlikely that this description is fully correct,
> >> or we'd have had problems before.
>
> > It is saying _all_ these have to be true, and we already quote
> > executables, and the string, so we always have more than two quotes:
>
> Well, the description is about as clear as mud, because it's not saying
> which two quote characters it's talking about. I read it as talking
> about the two quote characters around any one word/pathname. If you
> think it's talking about the two quote characters we put around the
> whole command (the SYSTEMQUOTE dodge), then we're certainly going to
> fail the "no special characters" test, because all these commands use
> I/O redirection symbols.
Right, the top says:
* 1. If all of the following conditions are met, then quote characters* on the _command_ _line_ are preserved:
It is talking about the entire command string, because this is system()
and there is no distinction between commands and arguments --- it is one
big string.
-- Bruce Momjian bruce@momjian.us EnterpriseDB http://www.enterprisedb.com
+ If your life is a hard drive, Christ can be your backup. +