Tom Lane wrote: > Bruce Momjian <[EMAIL PROTECTED]> writes: > > * From http://www.computerhope.com/cmd.htm: > > * > > * 1. If all of the following conditions are met, then quote characters > > * on the command line are preserved: > > * > > * - no /S switch > > * - exactly two quote characters > > * - no special characters between the two quote characters, where special > > * is one of: &<>()@^| > > * - there are one or more whitespace characters between the the two quote > > * characters > > * - the string between the two quote characters is the name of an > > * executable file. > > 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: * Win32 needs double quotes at the beginning and end of system() * strings. If not, it gets confused with multiple quoted strings. * It also requires double-quotes around the executable name and * any files used for redirection. Other args can use single-quotes. -- Bruce Momjian [EMAIL PROTECTED] EnterpriseDB http://www.enterprisedb.com + If your life is a hard drive, Christ can be your backup. + ---------------------------(end of broadcast)--------------------------- TIP 4: Have you searched our list archives? http://archives.postgresql.org