Patch #788404: ignore "b" and "t" mode modifiers in posix_popen.

Fixes #703198. Backported to 2.3.
This commit is contained in:
Martin v. Löwis 2003-10-31 10:01:53 +00:00
parent 9885c93b99
commit 9ad853bc37

View file

@ -4348,6 +4348,11 @@ posix_popen(PyObject *self, PyObject *args)
PyObject *f;
if (!PyArg_ParseTuple(args, "s|si:popen", &name, &mode, &bufsize))
return NULL;
/* Strip mode of binary or text modifiers */
if (strcmp(mode, "rb") == 0 || strcmp(mode, "rt") == 0)
mode = "r";
else if (strcmp(mode, "wb") == 0 || strcmp(mode, "wt") == 0)
mode = "w";
Py_BEGIN_ALLOW_THREADS
fp = popen(name, mode);
Py_END_ALLOW_THREADS