mirror of
https://github.com/python/cpython.git
synced 2025-08-04 00:48:58 +00:00
Issue #21942: Fixed source file viewing in pydoc's server mode on Windows.
This commit is contained in:
parent
7cca28ffa2
commit
eb43214427
3 changed files with 7 additions and 10 deletions
|
@ -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 = '<big><big><strong>%s</strong></big></big>' % 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 = '<pre>%s</pre>' % lines
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue