mirror of
https://github.com/python/cpython.git
synced 2026-05-18 02:15:28 -04:00
round(0, "ermintrude") succeeded instead of producing a TypeError. Fix this.
This commit is contained in:
@@ -2130,10 +2130,6 @@ builtin_round(PyObject *self, PyObject *args, PyObject *kwds)
|
||||
kwlist, &x, &o_ndigits))
|
||||
return NULL;
|
||||
|
||||
/* nans, infinities and zeros round to themselves */
|
||||
if (!Py_IS_FINITE(x) || x == 0.0)
|
||||
return PyFloat_FromDouble(x);
|
||||
|
||||
if (o_ndigits == NULL) {
|
||||
/* second argument defaults to 0 */
|
||||
ndigits = 0;
|
||||
@@ -2145,6 +2141,10 @@ builtin_round(PyObject *self, PyObject *args, PyObject *kwds)
|
||||
return NULL;
|
||||
}
|
||||
|
||||
/* nans, infinities and zeros round to themselves */
|
||||
if (!Py_IS_FINITE(x) || x == 0.0)
|
||||
return PyFloat_FromDouble(x);
|
||||
|
||||
/* Deal with extreme values for ndigits. For ndigits > NDIGITS_MAX, x
|
||||
always rounds to itself. For ndigits < NDIGITS_MIN, x always
|
||||
rounds to +-0.0. Here 0.30103 is an upper bound for log10(2). */
|
||||
|
||||
Reference in New Issue
Block a user