diff --git a/Lib/encodings/__init__.py b/Lib/encodings/__init__.py index ddd5afdcf2dab0..b4575d5a8d5385 100644 --- a/Lib/encodings/__init__.py +++ b/Lib/encodings/__init__.py @@ -35,7 +35,7 @@ _cache = {} _unknown = '--unknown--' _import_tail = ['*'] -_aliases = aliases.aliases + class CodecRegistryError(LookupError, SystemError): pass @@ -82,8 +82,8 @@ def search_function(encoding): # try in the encodings package, then at top-level. # norm_encoding = normalize_encoding(encoding) - aliased_encoding = _aliases.get(norm_encoding) or \ - _aliases.get(norm_encoding.replace('.', '_')) + aliased_encoding = aliases.aliases.get(norm_encoding) or \ + aliases.aliases.get(norm_encoding.replace('.', '_')) if aliased_encoding is not None: modnames = [aliased_encoding, norm_encoding] @@ -145,8 +145,8 @@ def search_function(encoding): pass else: for alias in codecaliases: - if alias not in _aliases: - _aliases[alias] = modname + if alias not in aliases.aliases: + aliases.aliases[alias] = modname # Return the registry entry return entry diff --git a/Misc/NEWS.d/next/Library/2020-08-16-11-11-30.bpo-1635741.Q5Zrx3.rst b/Misc/NEWS.d/next/Library/2020-08-16-11-11-30.bpo-1635741.Q5Zrx3.rst new file mode 100644 index 00000000000000..ef49d2580f3cb1 --- /dev/null +++ b/Misc/NEWS.d/next/Library/2020-08-16-11-11-30.bpo-1635741.Q5Zrx3.rst @@ -0,0 +1,2 @@ +Fix refleaks of `encodings.aliases` by using `encodings.aliases` directly in +:func:`encodings.search_function`. pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy