Recorded merge of 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:46:25 +00:00
parent ec883dba86
commit e021f4b206
4 changed files with 14 additions and 0 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

@ -136,6 +136,13 @@ text
("data", "\n"),
])
def test_malformatted_charref(self):
self._run_check("<p>&#bad;</p>", [
("starttag", "p", []),
("data", "&#bad;"),
("endtag", "p"),
])
def test_unclosed_entityref(self):
self._run_check("&entityref foo", [
("entityref", "entityref"),

View File

@ -871,3 +871,4 @@ Siebren van der Zee
Uwe Zessin
Tarek Ziadé
Peter Åstrand
Fredrik Håård

View File

@ -392,6 +392,9 @@ C-API
Library
-------
- Issue #6662: Fix parsing of malformatted charref (&#bad;), patch written by
Fredrik Håård
- Issue #8540: Decimal module: rename the Context._clamp attribute to
Context.clamp and make it public. This is useful in creating
contexts that correspond to the decimal interchange formats