Guido van Rossum 25826c93c4 Charles Waldman writes:
"""
Running "test_extcall" repeatedly results in memory leaks.

One of these can't be fixed (at least not easily!), it happens since
this code:

def saboteur(**kw):
    kw['x'] = locals()
d = {}
saboteur(a=1, **d)

creates a circular reference - d['x']['d']==d

The others are due to some missing decrefs in ceval.c, fixed by the
patch attached below.

Note:  I originally wrote this without the "goto", just adding the
missing decref's where needed.  But I think the goto is justified in
keeping the executable code size of ceval as small as possible.
"""

[I think the circular reference is more like kw['x']['kw'] == kw. --GvR]
2000-04-21 21:17:39 +00:00
..
2000-04-21 21:17:39 +00:00
2000-04-13 14:10:44 +00:00
1999-12-22 14:09:35 +00:00
1999-12-22 14:09:35 +00:00
2000-02-14 17:58:25 +00:00
1999-12-22 14:09:35 +00:00
1999-12-22 14:09:35 +00:00
2000-03-28 20:29:59 +00:00
1997-07-19 19:48:41 +00:00
1997-09-05 07:33:22 +00:00
1997-07-19 19:48:41 +00:00
1999-12-22 14:09:35 +00:00
1999-06-18 14:22:24 +00:00
1999-03-15 20:27:53 +00:00