(Merge 3.4) Issue #21398: Fix an unicode error in the pydoc pager when the
documentation contains characters not encodable to the stdout encoding.
This commit is contained in:
commit
38d3d22b29
|
@ -1404,6 +1404,9 @@ class _PlainTextDoc(TextDoc):
|
|||
def pager(text):
|
||||
"""The first time this is called, determine what kind of pager to use."""
|
||||
global pager
|
||||
# Escape non-encodable characters to avoid encoding errors later
|
||||
encoding = sys.getfilesystemencoding()
|
||||
text = text.encode(encoding, 'backslashreplace').decode(encoding)
|
||||
pager = getpager()
|
||||
pager(text)
|
||||
|
||||
|
|
|
@ -84,6 +84,9 @@ Core and Builtins
|
|||
Library
|
||||
-------
|
||||
|
||||
- Issue #21398: Fix an unicode error in the pydoc pager when the documentation
|
||||
contains characters not encodable to the stdout encoding.
|
||||
|
||||
- Issue #16531: ipaddress.IPv4Network and ipaddress.IPv6Network now accept
|
||||
an (address, netmask) tuple argument, so as to easily construct network
|
||||
objects from existing addresses.
|
||||
|
|
Loading…
Reference in New Issue