mirror of
https://github.com/python/cpython.git
synced 2026-05-17 18:08:50 -04:00
e3cafebb5c
* Fix refleak in C module __init_subclass__
This was leaking a reference to the weak cache dictionary for every
ZoneInfo subclass created.
* Fix refleak in ZoneInfo subclass's clear_cache
The previous version of the code accidentally cleared the global
ZONEINFO_STRONG_CACHE variable (and inducing `ZoneInfo` to create a new
strong cache) on calls to a subclass's `clear_cache()`. This would not
affect guaranteed behavior, but it's still not the right thing to do
(and it caused reference leaks).
(cherry picked from commit c3dd7e45cc)
Co-authored-by: Paul Ganssle <paul@ganssle.io>
Source files for standard library extension modules, and former extension modules that are now builtin modules.