mirror of
https://github.com/python/cpython.git
synced 2025-08-04 00:48:58 +00:00
This patch changes the default behaviour of the builtin charmap
codec to not apply Latin-1 mappings for keys which are not found in the mapping dictionaries, but instead treat them as undefined mappings. The patch was originally written by Martin v. Loewis with some additional (cosmetic) changes and an updated test script by Marc-Andre Lemburg. The standard codecs were recreated from the most current files available at the Unicode.org site using the Tools/scripts/gencodec.py tool. This patch closes the bugs #116285 and #119960.
This commit is contained in:
parent
b55b7bb3ab
commit
a866df806d
56 changed files with 424 additions and 293 deletions
|
@ -539,6 +539,21 @@ def EncodedFile(file, data_encoding, file_encoding=None, errors='strict'):
|
|||
sr.file_encoding = file_encoding
|
||||
return sr
|
||||
|
||||
### Helpers for charmap-based codecs
|
||||
|
||||
def make_identity_dict(rng):
|
||||
|
||||
""" make_identity_dict(rng) -> dict
|
||||
|
||||
Return a dictionary where elements of the rng sequence are
|
||||
mapped to themselves.
|
||||
|
||||
"""
|
||||
res = {}
|
||||
for i in rng:
|
||||
res[i]=i
|
||||
return res
|
||||
|
||||
### Tests
|
||||
|
||||
if __name__ == '__main__':
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue