diff --git a/Lib/doctest.py b/Lib/doctest.py index 726517e6ca1..a9357b599d0 100644 --- a/Lib/doctest.py +++ b/Lib/doctest.py @@ -1328,7 +1328,8 @@ def __patched_linecache_getlines(self, filename, module_globals=None): m = self.__LINECACHE_FILENAME_RE.match(filename) if m and m.group('name') == self.test.name: example = self.test.examples[int(m.group('examplenum'))] - return example.source.splitlines(True) + source = example.source.encode('ascii', 'backslashreplace') + return source.splitlines(True) else: return self.save_linecache_getlines(filename, module_globals) diff --git a/Misc/NEWS b/Misc/NEWS index f207082978b..f05e90ef1e4 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -29,6 +29,8 @@ Core and Builtins Library ------- +- Issue #7667: Fix doctest failures with non-ASCII paths. + - Issue #7512: shutil.copystat() could raise an OSError when the filesystem didn't support chflags() (for example ZFS under FreeBSD). The error is now silenced.