Unverified Kaydet (Commit) 736f17fb authored tarafından Miss Islington (bot)'s avatar Miss Islington (bot) Kaydeden (comit) GitHub

bpo-33256: Replace angle brackets around python object repr to display it in html (GH-6442)

(cherry picked from commit 7d68bfa8)
Co-authored-by: 's avatarsblondon <sblondon@users.noreply.github.com>
üst cebce2e8
...@@ -124,7 +124,7 @@ function calls leading up to the error, in the order they occurred.</p>''' ...@@ -124,7 +124,7 @@ function calls leading up to the error, in the order they occurred.</p>'''
args, varargs, varkw, locals = inspect.getargvalues(frame) args, varargs, varkw, locals = inspect.getargvalues(frame)
call = '' call = ''
if func != '?': if func != '?':
call = 'in ' + strong(func) + \ call = 'in ' + strong(pydoc.html.escape(func)) + \
inspect.formatargvalues(args, varargs, varkw, locals, inspect.formatargvalues(args, varargs, varkw, locals,
formatvalue=lambda value: '=' + pydoc.html.repr(value)) formatvalue=lambda value: '=' + pydoc.html.repr(value))
...@@ -282,7 +282,7 @@ class Hook: ...@@ -282,7 +282,7 @@ class Hook:
if self.display: if self.display:
if plain: if plain:
doc = doc.replace('&', '&amp;').replace('<', '&lt;') doc = pydoc.html.escape(doc)
self.file.write('<pre>' + doc + '</pre>\n') self.file.write('<pre>' + doc + '</pre>\n')
else: else:
self.file.write(doc + '\n') self.file.write(doc + '\n')
......
...@@ -45,6 +45,7 @@ class TestCgitb(unittest.TestCase): ...@@ -45,6 +45,7 @@ class TestCgitb(unittest.TestCase):
out = out.decode(sys.getfilesystemencoding()) out = out.decode(sys.getfilesystemencoding())
self.assertIn("ValueError", out) self.assertIn("ValueError", out)
self.assertIn("Hello World", out) self.assertIn("Hello World", out)
self.assertIn("<strong>&lt;module&gt;</strong>", out)
# By default we emit HTML markup. # By default we emit HTML markup.
self.assertIn('<p>', out) self.assertIn('<p>', out)
self.assertIn('</p>', out) self.assertIn('</p>', out)
......
...@@ -158,6 +158,7 @@ Mike Bland ...@@ -158,6 +158,7 @@ Mike Bland
Martin Bless Martin Bless
Pablo Bleyer Pablo Bleyer
Erik van Blokland Erik van Blokland
Stéphane Blondon
Eric Blossom Eric Blossom
Sergey Bobrov Sergey Bobrov
Finn Bock Finn Bock
......
Fix display of ``<module>`` call in the html produced by ``cgitb.html()``. Patch by Stéphane Blondon.
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