#12888: Fix a bug in HTMLParser.unescape that prevented it to escape more than 128 entities. Patch by Peter Otten.
This commit is contained in:
parent
73abc24345
commit
d9e0b068af
|
@ -458,4 +458,4 @@ class HTMLParser(_markupbase.ParserBase):
|
|||
return '&'+s+';'
|
||||
|
||||
return re.sub(r"&(#?[xX]?(?:[0-9a-fA-F]+|\w{1,8}));",
|
||||
replaceEntities, s, re.ASCII)
|
||||
replaceEntities, s, flags=re.ASCII)
|
||||
|
|
|
@ -377,7 +377,8 @@ class HTMLParserTolerantTestCase(TestCaseBase):
|
|||
p = html.parser.HTMLParser()
|
||||
self.assertEqual(p.unescape('&#bad;'),'&#bad;')
|
||||
self.assertEqual(p.unescape('&'),'&')
|
||||
|
||||
# see #12888
|
||||
self.assertEqual(p.unescape('{ ' * 1050), '{ ' * 1050)
|
||||
|
||||
def test_main():
|
||||
support.run_unittest(HTMLParserTestCase, HTMLParserTolerantTestCase)
|
||||
|
|
|
@ -661,6 +661,7 @@ Douglas Orr
|
|||
Michele Orrù
|
||||
Oleg Oshmyan
|
||||
Denis S. Otkidach
|
||||
Peter Otten
|
||||
Michael Otteneder
|
||||
R. M. Oudkerk
|
||||
Russel Owen
|
||||
|
|
|
@ -25,6 +25,9 @@ Core and Builtins
|
|||
Library
|
||||
-------
|
||||
|
||||
- Issue #12888: Fix a bug in HTMLParser.unescape that prevented it to escape
|
||||
more than 128 entities. Patch by Peter Otten.
|
||||
|
||||
- Issue #12878: Expose a __dict__ attribute on io.IOBase and its subclasses.
|
||||
|
||||
- Issue #12636: IDLE reads the coding cookie when executing a Python script.
|
||||
|
|
Loading…
Reference in New Issue