From: Neal Norwitz Date: Sun, 28 Jul 2002 15:12:10 +0000 (+0000) Subject: SF patch #577031, remove PyArg_Parse() since it's deprecated X-Git-Tag: v2.3c1~4848 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=77c72bb3236757ea0cf9bc8bc1c3f7ec28de777a;p=python SF patch #577031, remove PyArg_Parse() since it's deprecated --- diff --git a/Modules/selectmodule.c b/Modules/selectmodule.c index 4149dc5251..2caa0225f4 100644 --- a/Modules/selectmodule.c +++ b/Modules/selectmodule.c @@ -208,12 +208,17 @@ select_select(PyObject *self, PyObject *args) if (tout == Py_None) tvp = (struct timeval *)0; - else if (!PyArg_Parse(tout, "d", &timeout)) { + else if (!PyNumber_Check(tout)) { PyErr_SetString(PyExc_TypeError, "timeout must be a float or None"); return NULL; } else { + tout = PyNumber_Float(tout); + if (!tout) + return NULL; + timeout = PyFloat_AS_DOUBLE(tout); + Py_DECREF(tout); if (timeout > (double)LONG_MAX) { PyErr_SetString(PyExc_OverflowError, "timeout period too long"); @@ -450,11 +455,18 @@ poll_poll(pollObject *self, PyObject *args) /* Check values for timeout */ if (tout == NULL || tout == Py_None) timeout = -1; - else if (!PyArg_Parse(tout, "i", &timeout)) { + else if (!PyNumber_Check(tout)) { PyErr_SetString(PyExc_TypeError, "timeout must be an integer or None"); return NULL; } + else { + tout = PyNumber_Int(tout); + if (!tout) + return NULL; + timeout = PyInt_AS_LONG(tout); + Py_DECREF(tout); + } /* Ensure the ufd array is up to date */ if (!self->ufd_uptodate)