summaryrefslogtreecommitdiff
path: root/src/lxml/lxml.etree.pyx
diff options
context:
space:
mode:
authorStefan Behnel <stefan_ml@behnel.de>2014-03-03 13:59:32 +0100
committerStefan Behnel <stefan_ml@behnel.de>2014-03-03 13:59:32 +0100
commit040671bd28367a8657256b5f9d71bb4508cbd0dc (patch)
tree9440fa8ab9716444db92c4b5ec2bbcc194a0e6c3 /src/lxml/lxml.etree.pyx
parentad2d384646ad2859469d2b20e7f6f68db2d02451 (diff)
downloadpython-lxml-040671bd28367a8657256b5f9d71bb4508cbd0dc.tar.gz
fix crash with Element subtypes using __slots__ by removing freelists from non-final classes
Diffstat (limited to 'src/lxml/lxml.etree.pyx')
-rw-r--r--src/lxml/lxml.etree.pyx6
1 files changed, 1 insertions, 5 deletions
diff --git a/src/lxml/lxml.etree.pyx b/src/lxml/lxml.etree.pyx
index 672ebf7a..86040e20 100644
--- a/src/lxml/lxml.etree.pyx
+++ b/src/lxml/lxml.etree.pyx
@@ -517,7 +517,6 @@ cdef _Document _documentFactory(xmlDoc* c_doc, _BaseParser parser):
return result
-@cython.freelist(4)
cdef class DocInfo:
u"Document information provided by parser and DTD."
cdef _Document _doc
@@ -616,7 +615,6 @@ cdef class DocInfo:
@cython.no_gc_clear
-@cython.freelist(16)
cdef public class _Element [ type LxmlElementType, object LxmlElement ]:
u"""Element class.
@@ -1695,7 +1693,6 @@ cdef class _Entity(__ContentOnlyElement):
return u"&%s;" % self.name
-@cython.freelist(8)
cdef class QName:
u"""QName(text_or_uri_or_element, tag=None)
@@ -1764,7 +1761,6 @@ cdef class QName:
return python.PyObject_RichCompare(one, other, op)
-@cython.freelist(8)
cdef public class _ElementTree [ type LxmlElementTreeType,
object LxmlElementTree ]:
cdef _Document _doc
@@ -2233,6 +2229,7 @@ cdef _ElementTree _newElementTree(_Document doc, _Element context_node,
return result
+@cython.final
@cython.freelist(16)
cdef class _Attrib:
u"""A dict-like proxy for the ``Element.attrib`` property.
@@ -2885,7 +2882,6 @@ def ProcessingInstruction(target, text=None):
PI = ProcessingInstruction
-@cython.freelist(8)
cdef class CDATA:
u"""CDATA(data)