From 5fb8eb9e410821d6b7919445765cd4849f1fb5cc Mon Sep 17 00:00:00 2001 From: Georg Brandl Date: Sat, 24 Nov 2007 20:42:02 +0000 Subject: [PATCH] Use proper API for iter.__next__(). --- Objects/stringobject.c | 11 +++-------- 1 file changed, 3 insertions(+), 8 deletions(-) diff --git a/Objects/stringobject.c b/Objects/stringobject.c index fd320f3d444..7e3a84e6d25 100644 --- a/Objects/stringobject.c +++ b/Objects/stringobject.c @@ -2945,8 +2945,6 @@ string_new(PyTypeObject *type, PyObject *args, PyObject *kwds) it = PyObject_GetIter(x); if (it == NULL) goto error; - // XXX(brett.cannon): No API for this? - iternext = *Py_Type(it)->tp_iternext; /* Run the iterator to exhaustion */ for (i = 0; ; i++) { @@ -2954,13 +2952,10 @@ string_new(PyTypeObject *type, PyObject *args, PyObject *kwds) Py_ssize_t value; /* Get the next item */ - item = iternext(it); + item = PyIter_Next(it); if (item == NULL) { - if (PyErr_Occurred()) { - if (!PyErr_ExceptionMatches(PyExc_StopIteration)) - goto error; - PyErr_Clear(); - } + if (PyErr_Occurred()) + goto error; break; }