[Lxml-checkins] r43418 - lxml/trunk/src/lxml

scoder at codespeak.net scoder at codespeak.net
Tue May 15 18:44:50 CEST 2007


Author: scoder
Date: Tue May 15 18:44:50 2007
New Revision: 43418

Modified:
   lxml/trunk/src/lxml/extensions.pxi
Log:
memory leak

Modified: lxml/trunk/src/lxml/extensions.pxi
==============================================================================
--- lxml/trunk/src/lxml/extensions.pxi	(original)
+++ lxml/trunk/src/lxml/extensions.pxi	Tue May 15 18:44:50 2007
@@ -323,6 +323,7 @@
         self._compile_map = {}
 
     cdef _make_string(self, value):
+        cdef char* c_text
         if _isString(value):
             return value
         elif python.PyList_Check(value):
@@ -333,8 +334,10 @@
             if _isString(firstnode):
                 return firstnode
             elif isinstance(firstnode, _Element):
-                return funicode(
-                    tree.xmlNodeGetContent((<_Element>firstnode)._c_node))
+                c_text = tree.xmlNodeGetContent((<_Element>firstnode)._c_node)
+                s = funicode(c_text)
+                tree.xmlFree(c_text)
+                return s
             else:
                 return str(firstnode)
         else:


More information about the lxml-checkins mailing list