Mercurial > cpython-lru_cache-weakref
diff Python/bltinmodule.c @ 35265:860e0fd2fee8 2.4
Backport: fix cleanup DECREF logic in builtin_filter function.
| author | Georg Brandl <georg@python.org> |
|---|---|
| date | Tue, 19 Jul 2005 22:20:44 +0000 |
| parents | 1cf7d7225a99 |
| children | 8b07d731be60 |
line wrap: on
line diff
--- a/Python/bltinmodule.c Mon Jul 18 08:53:40 2005 +0000 +++ b/Python/bltinmodule.c Tue Jul 19 22:20:44 2005 +0000 @@ -147,10 +147,15 @@ if (PyTuple_Check(seq)) return filtertuple(func, seq); + /* Pre-allocate argument list tuple. */ + arg = PyTuple_New(1); + if (arg == NULL) + return NULL; + /* Get iterator. */ it = PyObject_GetIter(seq); if (it == NULL) - return NULL; + goto Fail_arg; /* Guess a result list size. */ len = PyObject_Size(seq); @@ -159,11 +164,6 @@ len = 8; /* arbitrary */ } - /* Pre-allocate argument list tuple. */ - arg = PyTuple_New(1); - if (arg == NULL) - goto Fail_arg; - /* Get a result list. */ if (PyList_Check(seq) && seq->ob_refcnt == 1) { /* Eww - can modify the list in-place. */
