[lxml-dev] fix for another memory leak
Stefan Behnel
behnel_ml at gkec.informatik.tu-darmstadt.de
Thu Feb 16 13:03:21 CET 2006
Narayan Desai schrieb:
> I updated to the current svn, and it looks like this chunk didn't get
> committed. Is this intentional?
Oh, thanks for checking! :)
It was by accident. It looked so much like the patch I had committed before
the last one that I just thought you had copied it. I'll check it in as soon
as I get to it.
Thank you for taking care,
Stefan
> Index: src/lxml/etree.pyx
> ===================================================================
> --- src/lxml/etree.pyx (revision 23382)
> +++ src/lxml/etree.pyx (working copy)
> @@ -775,16 +775,18 @@
>
> def __getitem__(self, key):
> cdef xmlNs* c_ns
> - cdef char* result
> + cdef char* cresult
> ns, tag = _getNsTag(key)
> if ns is None:
> - result = tree.xmlGetNoNsProp(self._c_node, tag)
> + cresult = tree.xmlGetNoNsProp(self._c_node, tag)
> else:
> - result = tree.xmlGetNsProp(self._c_node, tag, ns)
> - if result is NULL:
> + cresult = tree.xmlGetNsProp(self._c_node, tag, ns)
> + if cresult is NULL:
> # XXX free namespace that is not in use..?
> raise KeyError, key
> - return funicode(result)
> + result = funicode(cresult)
> + tree.xmlFree(cresult)
> + return result
>
> def __len__(self):
> cdef int c
More information about the lxml-dev
mailing list