From 9f7d3e7dfa3082c694b49213310649c5d61a3ac4 Mon Sep 17 00:00:00 2001 From: DJ Delorie Date: Mon, 31 May 2004 13:27:45 +0000 Subject: [PATCH] merge from gcc --- libiberty/ChangeLog | 4 ++++ libiberty/pex-win32.c | 7 ++++++- 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/libiberty/ChangeLog b/libiberty/ChangeLog index 0bd3266ca3..599fab3304 100644 --- a/libiberty/ChangeLog +++ b/libiberty/ChangeLog @@ -1,3 +1,7 @@ +2004-05-31 Danny Smith + + * pex-win32.c (fix_argv): Expand comment. + 2004-05-25 Daniel Jacobowitz * Makefile.in: Add .NOEXPORT. diff --git a/libiberty/pex-win32.c b/libiberty/pex-win32.c index 27a5bb4e30..2b4abdffbf 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 = '\\';