Author serhiy.storchaka
Recipients pitrou, serhiy.storchaka, vstinner
Date 2018-05-23.17:41:20
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1527097280.42.0.682650639539.issue33622@psf.upfronthosting.co.za>
In-reply-to
Content
There are following bugs in the garbage collector.

* If the garbage collector fails to add an object with __del__ or referenced by an object with __del__ to gc.garbage (in handle_legacy_finalizers()), it leaks it and other not added objects with __del__ and referenced by them. They become no longer accessible by the garbage collector.

* PyGC_Collect() is not documented, but it is a public C API. And it can be called by user with an exception set. PyGC_Collect() then can either crash or just silent the exception. It is safer to safe possible exception and restore it after collecting.

* A pointer to released member can be used (compared with NULL) in invoke_gc_callback(). This is an undefined behavior.
History
Date User Action Args
2018-05-23 17:41:20serhiy.storchakasetrecipients: + serhiy.storchaka, pitrou, vstinner
2018-05-23 17:41:20serhiy.storchakasetmessageid: <1527097280.42.0.682650639539.issue33622@psf.upfronthosting.co.za>
2018-05-23 17:41:20serhiy.storchakalinkissue33622 messages
2018-05-23 17:41:20serhiy.storchakacreate