Mercurial > cpython-lru_cache-weakref
diff Python/bltinmodule.c @ 46606:af0ef04401bb
Fix nits in builtin next().
| author | Georg Brandl <georg@python.org> |
|---|---|
| date | Wed, 30 Apr 2008 19:47:01 +0000 |
| parents | b2d93a960b98 |
| children | 58a0d5524f9a |
line wrap: on
line diff
--- a/Python/bltinmodule.c Wed Apr 30 17:11:46 2008 +0000 +++ b/Python/bltinmodule.c Wed Apr 30 19:47:01 2008 +0000 @@ -1048,27 +1048,28 @@ return NULL; if (!PyIter_Check(it)) { PyErr_Format(PyExc_TypeError, - "%.200s object is not an iterator", it->ob_type->tp_name); + "%.200s object is not an iterator", + it->ob_type->tp_name); return NULL; } res = (*it->ob_type->tp_iternext)(it); - if (res == NULL) { - if (def) { - if (PyErr_Occurred() && - !PyErr_ExceptionMatches(PyExc_StopIteration)) + if (res != NULL) { + return res; + } else if (def != NULL) { + if (PyErr_Occurred()) { + if(!PyErr_ExceptionMatches(PyExc_StopIteration)) return NULL; PyErr_Clear(); - Py_INCREF(def); - return def; - } else if (PyErr_Occurred()) { - return NULL; - } else { - PyErr_SetNone(PyExc_StopIteration); - return NULL; } + Py_INCREF(def); + return def; + } else if (PyErr_Occurred()) { + return NULL; + } else { + PyErr_SetNone(PyExc_StopIteration); + return NULL; } - return res; } PyDoc_STRVAR(next_doc,
