[Zodb-checkins] CVS: ZODB3 - NEWS.txt:1.33.6.57
Tim Peters
tim.one at comcast.net
Wed Dec 1 12:59:53 EST 2004
Update of /cvs-repository/ZODB3
In directory cvs.zope.org:/tmp/cvs-serv20538
Modified Files:
Tag: Zope-2_7-branch
NEWS.txt
Log Message:
subclass_dealloc(): Repair object resurrection.
A debug build of Python contains a doubly-linked list of all allocated
objects. In case an instance is resurrected by a __del__ method, the
instance needs to be added to that list again, else a segfault can occur
later when (if ever) the instance goes away normally (its __del__ method
stops resurrecting it). But ExtensionClass wasn't doing this, and a
repeatable segfault under a debug-build Python in test
checkMinimizeTerminates was the result.
Repaired by adding instance resurrection code from Python's classobject.c
instance_dealloc() to Zope's ExtensionClass.c subclass_dealloc().
=== ZODB3/NEWS.txt 1.33.6.56 => 1.33.6.57 ===
--- ZODB3/NEWS.txt:1.33.6.56 Tue Nov 16 16:39:04 2004
+++ ZODB3/NEWS.txt Wed Dec 1 12:59:52 2004
@@ -10,6 +10,14 @@
undefined global while it was trying to raise ``CorruptedError``. It
raises ``CorruptedError``, as it always intended, in these cases now.
+ExtensionClass
+--------------
+
+The deallocation function for ``ExtensionClass`` instances wasn't
+entirely correct when an instance's ``__del__`` method resurrected the
+instance. This could lead to segfaults, but only under a debug build
+of Python and ExtensionClass.
+
What's new in ZODB3 3.2.4?
==========================
Release date: 24-Oct-2004
More information about the Zodb-checkins
mailing list