Merged revisions 81500-81501 via svnmerge from

svn+ssh://pythondev@svn.python.org/python/trunk

........
  r81500 | victor.stinner | 2010-05-24 23:33:24 +0200 (lun., 24 mai 2010) | 2 lines

  Issue #6662: Fix parsing of malformatted charref (&#bad;)
........
  r81501 | victor.stinner | 2010-05-24 23:37:28 +0200 (lun., 24 mai 2010) | 2 lines

  Add the author of the last fix (Issue #6662)
........
This commit is contained in:
Victor Stinner 2010-05-24 21:42:59 +00:00
parent cb7ea2912a
commit b0c42877de
4 changed files with 15 additions and 1 deletions

View File

@ -175,6 +175,9 @@ class HTMLParser(markupbase.ParserBase):
i = self.updatepos(i, k)
continue
else:
if ";" in rawdata[i:]: #bail by consuming &#
self.handle_data(rawdata[0:2])
i = self.updatepos(i, 2)
break
elif startswith('&', i):
match = entityref.match(rawdata, i)

View File

@ -313,6 +313,13 @@ DOCTYPE html [
("starttag", "html", [("foo", u"\u20AC&aa&unsupported;")])
])
def test_malformatted_charref(self):
self._run_check("<p>&#bad;</p>", [
("starttag", "p", []),
("data", "&#bad;"),
("endtag", "p"),
])
def test_main():
test_support.run_unittest(HTMLParserTestCase)

View File

@ -191,7 +191,7 @@ Luke Dunstan
Andy Dustman
Gary Duzan
Eugene Dvurechenski
Josip Dzolonga
Josip Dzolonga
Maxim Dzumanenko
Walter Dörwald
Hans Eckardt
@ -812,3 +812,4 @@ Uwe Zessin
Tarek ZiadŽ
Peter Åstrand
Jesse Noller
Fredrik H裹rd

View File

@ -55,6 +55,9 @@ C-API
Library
-------
- Issue #6662: Fix parsing of malformatted charref (&#bad;), patch written by
Fredrik Håård
- Issue #1628205: Socket file objects returned by socket.socket.makefile() now
properly handles EINTR within the read, readline, write & flush methods.
The socket.sendall() method now properly handles interrupted system calls.