Tom Lane wrote: > In src/include/port.h we have > > /* > * 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. > * > * See the "Notes" section about quotes at: > * http://home.earthlink.net/~rlively/MANUALS/COMMANDS/C/CMD.HTM > */ > > The referenced link seems to be dead :-( but AFAICS the pg_regress code > is following the stated rules. Also, how is it getting past the "make > install" step which is quoting things just the same? Puzzling.
I found the description somewhere else and copied it into our header file: * 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. * * 2. Otherwise, old behavior is to see if the first character is a quote * character and if so, strip the leading character and remove the last * quote character on the command line, preserving any text after the last * quote character. -- 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 6: explain analyze is your friend