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

Reply via email to