diff options
-rw-r--r-- | libiberty/ChangeLog | 4 | ||||
-rw-r--r-- | libiberty/pex-win32.c | 7 |
2 files changed, 10 insertions, 1 deletions
diff --git a/libiberty/ChangeLog b/libiberty/ChangeLog index 0bd3266..599fab3 100644 --- a/libiberty/ChangeLog +++ b/libiberty/ChangeLog @@ -1,3 +1,7 @@ +2004-05-31 Danny Smith <dannysmith@users.sourceforge.net> + + * pex-win32.c (fix_argv): Expand comment. + 2004-05-25 Daniel Jacobowitz <drow@false.org> * Makefile.in: Add .NOEXPORT. diff --git a/libiberty/pex-win32.c b/libiberty/pex-win32.c index 27a5bb4..2b4abdf 100644 --- a/libiberty/pex-win32.c +++ b/libiberty/pex-win32.c @@ -59,7 +59,12 @@ fix_argv (argvec) int i; char * command0 = argvec[0]; - /* Ensure that the executable pathname uses Win32 backslashes. */ + /* Ensure that the executable pathname uses Win32 backslashes. This + is not necessary on NT, but on W9x, forward slashes causes failure + of spawn* and exec* functions (and probably any function that + calls CreateProcess) *iff* the executable pathname (argvec[0]) is + a quoted string. And quoting is necessary in case a pathname + contains embedded white space. You can't win. */ for (; *command0 != '\0'; command0++) if (*command0 == '/') *command0 = '\\'; |