[pygtk] fixing GSource wrapper memory management

Bryan Silverthorn bcs26 at cornell.edu
Mon Mar 17 00:20:38 WST 2008


There are real problems with GSource wrapper memory management as it stands
now: eg, finalize methods can cause segfaults and memory corruption;
destroy()ed Source wrappers are always leaked; and the cyclic GC will
segfault on any reference to a Timeout or Idle instance.

I've attached patches (against the wrapper and test suite) to bug #510511
with the hope of fixing (much of) this situation.  The wrapper patch isn't
huge, but the changes to how the GSource lifecycle is handled are
substantial. I'd appreciate reviews and additional test cases.

I think it's important, and I'd like to see it applied. Is anyone in a
position to comment and/or make that happen?

Thanks,

Bryan Silverthorn
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://www.daa.com.au/pipermail/pygtk/attachments/20080316/68f33ef1/at=
tachment.htm


More information about the pygtk mailing list