# HG changeset patch # User Mike Hommey # Date 2015-04-12 13:51:13 # Node ID 64cd23a1bc138eeba43958d7420528c5b6a3e98d # Parent a85c4ed1132f5d7c415635ab367f0d146dae3c02 lazymanifest: fix memory leak in lmiter_iterentriesnext() after 3d485727e45e diff --git a/mercurial/manifest.c b/mercurial/manifest.c --- a/mercurial/manifest.c +++ b/mercurial/manifest.c @@ -232,7 +232,7 @@ static PyObject *lmiter_iterentriesnext( size_t pl; line *l; Py_ssize_t consumed; - PyObject *path = NULL, *hash = NULL, *flags = NULL; + PyObject *ret = NULL, *path = NULL, *hash = NULL, *flags = NULL; l = lmiter_nextline((lmIter *)o); if (!l) { goto bail; @@ -246,12 +246,12 @@ static PyObject *lmiter_iterentriesnext( if (!path || !hash || !flags) { goto bail; } - return PyTuple_Pack(3, path, hash, flags); + ret = PyTuple_Pack(3, path, hash, flags); bail: Py_XDECREF(path); Py_XDECREF(hash); Py_XDECREF(flags); - return NULL; + return ret; } static PyTypeObject lazymanifestEntriesIterator = {