From eb43214427b1ae6d7095bdd2333e9bc2220f9449 Mon Sep 17 00:00:00 2001 From: Zachary Ware Date: Thu, 10 Jul 2014 11:18:00 -0500 Subject: Issue #21942: Fixed source file viewing in pydoc's server mode on Windows. --- Lib/pydoc.py | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) (limited to 'Lib/pydoc.py') diff --git a/Lib/pydoc.py b/Lib/pydoc.py index cc43684f19..37abf67063 100755 --- a/Lib/pydoc.py +++ b/Lib/pydoc.py @@ -64,6 +64,7 @@ import re import sys import time import tokenize +import urllib.parse import warnings from collections import deque from reprlib import Repr @@ -648,10 +649,7 @@ class HTMLDoc(Doc): head = '%s' % linkedname try: path = inspect.getabsfile(object) - url = path - if sys.platform == 'win32': - import nturl2path - url = nturl2path.pathname2url(path) + url = urllib.parse.quote(path) filelink = self.filelink(url, path) except TypeError: filelink = '(built-in)' @@ -2353,7 +2351,7 @@ def _url_handler(url, content_type="text/html"): def html_getfile(path): """Get and display a source file listing safely.""" - path = path.replace('%20', ' ') + path = urllib.parse.unquote(path) with tokenize.open(path) as fp: lines = html.escape(fp.read()) body = '
%s
' % lines -- cgit v1.2.1