Staging
v0.5.1
v0.5.1
https://github.com/python/cpython
Revision 97719c9ce56bfb19fa7b0833c8c7947ad2fd7e52 authored by Tim Peters on 21 May 2003, 20:43:10 UTC, committed by Tim Peters on 21 May 2003, 20:43:10 UTC
tp_free is NULL or PyObject_Del at the end. Because it's a base type it must call tp_free in its dealloc function, and because it's gc'able it must not call PyObject_Del. inherit_slots(): Don't inherit tp_free unless the type and its base agree about whether they're gc'able. If the type is gc'able and the base is not, and the base uses the default PyObject_Del for its tp_free, give the type PyObject_GC_Del for its tp_free (the appropriate default for a gc'able type). cPickle.c: The Pickler and Unpickler types claim to be base classes and gc'able, but their dealloc functions didn't call tp_free. Repaired that. Also call PyType_Ready() on these typeobjects, so that the correct (PyObject_GC_Del) default memory-freeing function gets plugged into these types' tp_free slots.
1 parent 54d9cdf
Tip revision: 97719c9ce56bfb19fa7b0833c8c7947ad2fd7e52 authored by Tim Peters on 21 May 2003, 20:43:10 UTC
PyType_Ready(): Complain if the type is a base type, and gc'able, and
PyType_Ready(): Complain if the type is a base type, and gc'able, and
Tip revision: 97719c9
File | Mode | Size |
---|---|---|
.cvsignore | -rw-r--r-- | 87 bytes |
BUILDno.txt | -rw-r--r-- | 2.8 KB |
Uninstal.wse | -rw-r--r-- | 9.5 KB |
_socket.dsp | -rwxr-xr-x | 4.0 KB |
_sre.dsp | -rwxr-xr-x | 7.6 KB |
_symtable.dsp | -rw-r--r-- | 4.0 KB |
_testcapi.dsp | -rw-r--r-- | 4.0 KB |
_tkinter.dsp | -rw-r--r-- | 8.6 KB |
bsddb.dsp | -rw-r--r-- | 8.4 KB |
field3.py | -rw-r--r-- | 966 bytes |
installer.bmp | -rw-r--r-- | 49.1 KB |
mmap.dsp | -rw-r--r-- | 3.9 KB |
parser.dsp | -rw-r--r-- | 7.7 KB |
pcbuild.dsw | -rw-r--r-- | 5.1 KB |
pyexpat.dsp | -rwxr-xr-x | 7.9 KB |
python.dsp | -rw-r--r-- | 6.8 KB |
python.iss | -rw-r--r-- | 15.1 KB |
python20.wse | -rw-r--r-- | 75.4 KB |
pythoncore.dsp | -rw-r--r-- | 39.9 KB |
pythonw.dsp | -rw-r--r-- | 7.3 KB |
readme.txt | -rw-r--r-- | 4.8 KB |
rmpyc.py | -rw-r--r-- | 646 bytes |
rt.bat | -rwxr-xr-x | 1.4 KB |
select.dsp | -rwxr-xr-x | 4.1 KB |
unicodedata.dsp | -rwxr-xr-x | 4.1 KB |
w9xpopen.dsp | -rw-r--r-- | 3.4 KB |
winreg.dsp | -rw-r--r-- | 4.0 KB |
winsound.dsp | -rw-r--r-- | 3.8 KB |
zlib.dsp | -rw-r--r-- | 4.1 KB |
Computing file changes ...