Pull a NULL pointer check up to cover more cases in the function.

Found using Clang's static analyzer.
This commit is contained in:
Brett Cannon 2010-05-04 01:23:36 +00:00
parent a7f13ee3f5
commit 0d8a859a85

View file

@ -1833,11 +1833,13 @@ PyNumber_ToBase(PyObject *n, int base)
int
PySequence_Check(PyObject *s)
{
if (s && PyInstance_Check(s))
if (s == NULL)
return 0;
if (PyInstance_Check(s))
return PyObject_HasAttrString(s, "__getitem__");
if (PyDict_Check(s))
return 0;
return s != NULL && s->ob_type->tp_as_sequence &&
return s->ob_type->tp_as_sequence &&
s->ob_type->tp_as_sequence->sq_item != NULL;
}