update NEWS.stable
[gnulib.git] / lib / w32spawn.h
index 10efd0a..4cdb843 100644 (file)
@@ -1,5 +1,5 @@
-/* Auxiliary functions for the creation of subprocesses.  Native Woe32 API.
-   Copyright (C) 2001, 2003, 2004-2009 Free Software Foundation, Inc.
+/* Auxiliary functions for the creation of subprocesses.  Native Windows API.
+   Copyright (C) 2001, 2003-2012 Free Software Foundation, Inc.
    Written by Bruno Haible <bruno@clisp.org>, 2003.
 
    This program is free software: you can redistribute it and/or modify
    You should have received a copy of the GNU General Public License
    along with this program.  If not, see <http://www.gnu.org/licenses/>.  */
 
-/* Get declarations of the Win32 API functions.  */
+/* Get declarations of the native Windows API functions.  */
 #define WIN32_LEAN_AND_MEAN
 #include <windows.h>
 
-/* Get _get_osfhandle() and _open_osfhandle().  */
+/* Get _open_osfhandle().  */
 #include <io.h>
 
 #include <stdbool.h>
@@ -27,6 +27,9 @@
 #include <unistd.h>
 #include <errno.h>
 
+/* Get _get_osfhandle().  */
+#include "msvc-nothrow.h"
+
 #include "cloexec.h"
 #include "xalloc.h"
 
@@ -98,7 +101,7 @@ undup_safer_noinherit (int tempfd, int origfd)
          v.dwPlatformId == VER_PLATFORM_WIN32_NT;
       }) ? "cmd.exe" : "command.com").
    Instead it simply concatenates the arguments, separated by ' ', and calls
-   CreateProcess().  We must quote the arguments since Win32 CreateProcess()
+   CreateProcess().  We must quote the arguments since Windows CreateProcess()
    interprets characters like ' ', '\t', '\\', '"' (but not '<' and '>') in a
    special way:
    - Space and tab are interpreted as delimiters. They are not treated as
@@ -133,7 +136,7 @@ prepare_spawn (char **argv)
      script, not a program.
      On Unix, this would be "/bin/sh". On native Windows, "sh" is actually
      "sh.exe".  We have to omit the directory part and rely on the search in
-     PATH, because the mingw "mount points" are not visible inside Win32
+     PATH, because the mingw "mount points" are not visible inside Windows
      CreateProcess().  */
   *new_argv++ = "sh.exe";