Commit 38d3d22b authored by Victor Stinner's avatar Victor Stinner

(Merge 3.4) Issue #21398: Fix an unicode error in the pydoc pager when the

documentation contains characters not encodable to the stdout encoding.
parents 470cf8df 0cc45baa
......@@ -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.
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment