From f343e01c170b3f63eafac4568d905be91b676254 Mon Sep 17 00:00:00 2001 From: Amaury Forgeot d'Arc Date: Mon, 12 Jan 2009 23:58:21 +0000 Subject: Merged revisions 68560 via svnmerge from svn+ssh://pythondev@svn.python.org/python/trunk ........ r68560 | amaury.forgeotdarc | 2009-01-13 00:36:55 +0100 (mar., 13 janv. 2009) | 6 lines #3720: Interpreter crashes when an evil iterator removes its own next function. Now the slot is filled with a function that always raises. Will not backport: extensions compiled with 2.6.x would not run on 2.6.0. ........ --- Python/bltinmodule.c | 3 --- 1 file changed, 3 deletions(-) (limited to 'Python/bltinmodule.c') diff --git a/Python/bltinmodule.c b/Python/bltinmodule.c index 4e9ec85ca0..f87fdd2a79 100644 --- a/Python/bltinmodule.c +++ b/Python/bltinmodule.c @@ -375,7 +375,6 @@ filter_next(filterobject *lz) long ok; PyObject *(*iternext)(PyObject *); - assert(PyIter_Check(it)); iternext = *Py_TYPE(it)->tp_iternext; for (;;) { item = iternext(it); @@ -2144,7 +2143,6 @@ zip_next(zipobject *lz) Py_INCREF(result); for (i=0 ; i < tuplesize ; i++) { it = PyTuple_GET_ITEM(lz->ittuple, i); - assert(PyIter_Check(it)); item = (*Py_TYPE(it)->tp_iternext)(it); if (item == NULL) { Py_DECREF(result); @@ -2160,7 +2158,6 @@ zip_next(zipobject *lz) return NULL; for (i=0 ; i < tuplesize ; i++) { it = PyTuple_GET_ITEM(lz->ittuple, i); - assert(PyIter_Check(it)); item = (*Py_TYPE(it)->tp_iternext)(it); if (item == NULL) { Py_DECREF(result); -- cgit v1.2.1