Issue #12459: time.sleep() now raises a ValueError if the sleep length is
negative, instead of an infinite sleep on Windows or raising an IOError on Linux for example, to have the same behaviour on all platforms.
This commit is contained in:
parent
5351a1f956
commit
7f53a5027d
|
@ -27,6 +27,8 @@ class TimeTestCase(unittest.TestCase):
|
|||
int(self.t))
|
||||
|
||||
def test_sleep(self):
|
||||
self.assertRaises(ValueError, time.sleep, -2)
|
||||
self.assertRaises(ValueError, time.sleep, -1)
|
||||
time.sleep(1.2)
|
||||
|
||||
def test_strftime(self):
|
||||
|
|
|
@ -219,6 +219,10 @@ Core and Builtins
|
|||
Library
|
||||
-------
|
||||
|
||||
- Issue #12459: time.sleep() now raises a ValueError if the sleep length is
|
||||
negative, instead of an infinite sleep on Windows or raising an IOError on
|
||||
Linux for example, to have the same behaviour on all platforms.
|
||||
|
||||
- Issue #12451: pydoc: html_getfile() now uses tokenize.open() to support
|
||||
Python scripts using a encoding different than UTF-8 (read the coding cookie
|
||||
of the script).
|
||||
|
|
|
@ -141,6 +141,11 @@ time_sleep(PyObject *self, PyObject *args)
|
|||
double secs;
|
||||
if (!PyArg_ParseTuple(args, "d:sleep", &secs))
|
||||
return NULL;
|
||||
if (secs < 0) {
|
||||
PyErr_SetString(PyExc_ValueError,
|
||||
"sleep length must be non-negative");
|
||||
return NULL;
|
||||
}
|
||||
if (floatsleep(secs) != 0)
|
||||
return NULL;
|
||||
Py_INCREF(Py_None);
|
||||
|
|
Loading…
Reference in New Issue