diff --git a/Lib/xml/dom/pulldom.py b/Lib/xml/dom/pulldom.py index 81a36b073e8..d5ac8b2b984 100644 --- a/Lib/xml/dom/pulldom.py +++ b/Lib/xml/dom/pulldom.py @@ -326,7 +326,7 @@ def parse(stream_or_string, parser=None, bufsize=None): if bufsize is None: bufsize = default_bufsize if isinstance(stream_or_string, str): - stream = open(stream_or_string) + stream = open(stream_or_string, 'rb') else: stream = stream_or_string if not parser: diff --git a/Misc/NEWS b/Misc/NEWS index 3007cdc82e5..7e2831a11c6 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -209,6 +209,9 @@ Core and Builtins Library ------- +- Issue #12451: xml.dom.pulldom: parse() now opens files in binary mode instead + of the text mode (using the locale encoding) to avoid encoding issues. + - Issue #12147: Adjust the new-in-3.2 smtplib.send_message method for better conformance to the RFCs: correctly handle Sender and Resent- headers.