Hash :
ae2b15ba
Author :
Date :
2012-01-31T12:15:46
popen: Make more robust on Windows. * lib/popen.c: On native Windows, use the _popen based code even if HAVE_POPEN is set. * doc/posix-functions/popen.texi: Mention necessity of COMSPEC environment variable on native Windows.
@node popen
@section @code{popen}
@findex popen
POSIX specification:@* @url{http://www.opengroup.org/onlinepubs/9699919799/functions/popen.html}
Gnulib module: popen
Portability problems fixed by Gnulib:
@itemize
@item
This function is missing on some platforms:
MSVC 9.
@item
Some platforms start the child with closed stdin or stdout if the
standard descriptors were closed in the parent:
Cygwin 1.5.x.
@end itemize
Portability problems not fixed by Gnulib:
@itemize
@item
On native Windows platforms, this functions terminates the current process
with exit code 127 if the environment variable @code{COMSPEC} is not set.
@item
Some platforms mistakenly set the close-on-exec bit, then if it is
cleared by the application, the platform then leaks file descriptors
from earlier @code{popen} calls into subsequent @code{popen} children:
Cygwin 1.5.x.
@end itemize