Validate that __length_hint__ returns a usable result.

This commit is contained in:
Raymond Hettinger 2009-02-03 02:12:10 +00:00
parent 94a45da6be
commit 5d65412d35
2 changed files with 11 additions and 1 deletions

View file

@ -105,7 +105,7 @@ _PyObject_LengthHint(PyObject *o, Py_ssize_t defaultvalue)
PyErr_Clear();
return defaultvalue;
}
rv = PyLong_AsSsize_t(ro);
rv = PyLong_Check(ro) ? PyLong_AsSsize_t(ro) : defaultvalue;
Py_DECREF(ro);
return rv;
}