This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author kaizhu
Recipients georg.brandl, gregory.p.smith, kaizhu, loewis
Date 2011-01-02.08:59:27
SpamBayes Score 6.0448797e-09
Marked as misclassified No
Message-id <1293958782.84.0.988274843873.issue10802@psf.upfronthosting.co.za>
In-reply-to
Content
tested w/ following debug code.  looks like greg is correct - HAVE_PIPE2 should NOT b defined under colinux.

diff -r 6fa1e3b94d8f Modules/_posixsubprocess.c
--- a/Modules/_posixsubprocess.c        Sat Jan 01 22:18:46 2011 +0100
+++ b/Modules/_posixsubprocess.c        Sun Jan 02 03:48:47 2011 -0500
@@ -412,10 +412,12 @@
     int fds[2];
     int res;
 #ifdef HAVE_PIPE2
+    PyErr_Format(PyExc_RuntimeError, "HAVE_PIPE2 = %i, O_CLOEXEC = %i", HAVE_PIPE2, O_CLOEXEC); return NULL;
     Py_BEGIN_ALLOW_THREADS
     res = pipe2(fds, O_CLOEXEC);
     Py_END_ALLOW_THREADS
 #else
+    PyErr_Format(PyExc_RuntimeError, "HAVE_PIPE2 not defined, O_CLOEXEC = %i", O_CLOEXEC); return NULL;
     /* We hold the GIL which offers some protection from other code calling
      * fork() before the CLOEXEC flags have been set but we can't guarantee
      * anything without pipe2(). */



b2 release:
./python -c 'import _posixsubprocess; _posixsubprocess.cloexec_pipe()'
Traceback (most recent call last):
  File "<string>", line 1, in <module>
RuntimeError: HAVE_PIPE2 not defined, O_CLOEXEC = 524288



latest hg:
./python -c 'import _posixsubprocess; _posixsubprocess.cloexec_pipe()'
Traceback (most recent call last):
  File "<string>", line 1, in <module>
RuntimeError: HAVE_PIPE2 = 1, O_CLOEXEC = 524288
History
Date User Action Args
2011-01-02 08:59:42kaizhusetrecipients: + kaizhu, loewis, georg.brandl, gregory.p.smith
2011-01-02 08:59:42kaizhusetmessageid: <1293958782.84.0.988274843873.issue10802@psf.upfronthosting.co.za>
2011-01-02 08:59:27kaizhulinkissue10802 messages
2011-01-02 08:59:27kaizhucreate