Commit 8c04e6f9 authored by Stefan Behnel's avatar Stefan Behnel

reverted tp_dealloc() call patch

parent 615282f7
...@@ -1111,11 +1111,7 @@ class ModuleNode(Nodes.Node, Nodes.BlockNode): ...@@ -1111,11 +1111,7 @@ class ModuleNode(Nodes.Node, Nodes.BlockNode):
if base_type: if base_type:
tp_dealloc = TypeSlots.get_base_slot_function(scope, tp_slot) tp_dealloc = TypeSlots.get_base_slot_function(scope, tp_slot)
if tp_dealloc is None: if tp_dealloc is None:
# This is an externally defined type. Calling through the tp_dealloc = "%s->tp_dealloc" % base_type.typeptr_cname
# cimported base type pointer directly interacts badly with
# the module cleanup, which may already have cleared it.
# Instead, play safe by going through Py_TYPE() again.
tp_dealloc = "Py_TYPE(o)->tp_base->tp_dealloc"
code.putln( code.putln(
"%s(o);" % tp_dealloc) "%s(o);" % tp_dealloc)
else: else:
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment