From fa6c6f8a73c8da8242c2b4bfb5358733a5f1ef92 Mon Sep 17 00:00:00 2001 From: Raymond Hettinger Date: Thu, 19 Feb 2004 06:12:06 +0000 Subject: Keep the list.pop() optimization while restoring the many possibility for types other than PyInt being accepted for the optional argument. (Spotted by Neal Norwitz.) --- Objects/listobject.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/Objects/listobject.c b/Objects/listobject.c index 7289be1..162efa0 100644 --- a/Objects/listobject.c +++ b/Objects/listobject.c @@ -779,10 +779,8 @@ listpop(PyListObject *self, PyObject *args) if (arg != NULL) { if (PyInt_Check(arg)) i = (int)(PyInt_AS_LONG((PyIntObject*) arg)); - else { - PyErr_SetString(PyExc_TypeError, "an integer is required"); - return NULL; - } + else if (!PyArg_ParseTuple(args, "|i:pop", &i)) + return NULL; } if (self->ob_size == 0) { /* Special-case most common failure cause */ -- cgit v0.12