cpython/Misc
Tim Peters add09b4149 SF bug 840829: weakref callbacks and gc corrupt memory.
subtype_dealloc():  This left the dying object exposed to gc, so that
if cyclic gc triggered during the weakref callback, gc tried to delete
the dying object a second time.  That's a disaster.  subtype_dealloc()
had a (I hope!) unique problem here, as every normal dealloc routine
untracks the object (from gc) before fiddling with weakrefs etc.  But
subtype_dealloc has obscure technical reasons for re-registering the
dying object with gc (already explained in a large comment block at
the bottom of the function).

The fix amounts to simply refraining from reregistering the dying object
with gc until after the weakref callback (if any) has been called.

This is a critical bug (hard to predict, and causes seemingly random
memory corruption when it occurs).  I'll backport it to 2.3 later.
2003-11-12 20:43:28 +00:00
..
RPM Patch #823259: Update spec file: 2003-10-19 18:34:52 +00:00
ACKS Patch #798297: Add IMAP THREAD command. 2003-11-10 06:44:44 +00:00
AIX-NOTES The fix to use . was incorporated 2003-06-08 02:25:17 +00:00
BeOS-NOTES Completely revamped BeOS notes, by Donn Cave (SF patch 411834). 2001-04-10 21:51:29 +00:00
BeOS-setup.py SF patch 568629 by Oren Tirosh: types made callable. 2002-06-14 20:41:17 +00:00
cheatsheet Update for new module and new builtin. 2003-07-12 23:55:57 +00:00
find_recursionlimit.py script that reports a fairly safe recursionlimit for a specific platform 2000-08-31 19:24:17 +00:00
gdbinit A helper to dump info about the current frame, 2003-10-03 20:56:15 +00:00
HISTORY Fix a bunch of typos in documentation, docstrings and comments. 2003-10-20 14:01:56 +00:00
indent.pro
NEWS SF bug 840829: weakref callbacks and gc corrupt memory. 2003-11-12 20:43:28 +00:00
NEWS.help Updated (2.3 OK now) 2003-01-03 03:29:58 +00:00
Porting Patch #411138: Rename config.h to pyconfig.h. Closes bug #231774. 2001-07-26 13:41:06 +00:00
PURIFY.README
pymemcompat.h Fix grammatically inept comment. 2002-08-22 13:36:11 +00:00
python-mode.el delete the f1 key binding. py-help-at-point is still available @ C-c C-h. 2003-08-01 04:27:34 +00:00
python.man Remove -U from argument list. 2003-05-26 05:15:35 +00:00
README mention pymemcompat.h in Misc/README 2003-08-11 16:18:43 +00:00
RFD
setuid-prog.c
SpecialBuilds.txt _Py_PrintReferenceAddresses(): also print the type name. In real use 2003-04-18 00:45:59 +00:00
vgrindefs Add 'yield' as a keyword 2001-08-06 17:42:53 +00:00

Python Misc subdirectory
========================

This directory contains files that wouldn't fit in elsewhere.  Some
documents are only of historic importance.

Files found here
----------------

ACKS		Acknowledgements
AIX-NOTES	Notes for building Python on AIX
BeOS-NOTES	Notes for building on BeOS
BeOS-setup.py	setup.py replacement for BeOS, see BeOS-NOTES
cheatsheet	Quick summary of Python by Ken Manheimer
find_recursionlimit.py  Script to find a value for sys.maxrecursionlimit
gdbinit		Handy stuff to put in your .gdbinit file, if you use gdb
HISTORY		News from previous releases -- oldest last
HPUX-NOTES	Notes about dynamic loading under HP-UX
indent.pro	GNU indent profile approximating my C style
NEWS		News for this release (for some meaning of "this")
Porting		Mini-FAQ on porting to new platforms
PURIFY.README	Information for Purify users
pymemcompat.h	Memory interface compatibility file.
python.man	UNIX man page for the python interpreter
python-mode.el	Emacs mode for editing Python programs
README		The file you're reading now
RFD		Request For Discussion about a Python newsgroup
RPM		(Old) tools to build RPMs
SpecialBuilds.txt     Describes extra symbols you can set for debug builds
setuid-prog.c	C helper program for set-uid Python scripts
vgrindefs	Python configuration for vgrind (a generic pretty printer)