Skip to content

Commit bd0af34

Browse files
committed
some elements didn't check if <p> was in scope before invoking endTagP and change some small bits
--HG-- extra : convert_revision : svn%3Aacbfec75-9323-0410-a652-858a13e371e0/trunk%40274
1 parent 3e6a537 commit bd0af34

1 file changed

Lines changed: 7 additions & 6 deletions

File tree

src/parser.py

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -863,11 +863,11 @@ def startTagBody(self, name, attributes):
863863

864864
def startTagCloseP(self, name, attributes):
865865
if self.parser.elementInScope("p"):
866-
self.endTagP(name)
866+
self.endTagP("p")
867867
self.parser.insertElement(name, attributes)
868868

869869
def startTagForm(self, name, attributes):
870-
if self.parser.formPointer is not None:
870+
if self.parser.formPointer:
871871
self.parser.parseError()
872872
else:
873873
if self.parser.elementInScope("p"):
@@ -961,7 +961,8 @@ def startTagVoidFormatting(self, name, attributes):
961961
self.parser.openElements.pop()
962962

963963
def startTagHr(self, name, attributes):
964-
self.endTagP("p")
964+
if self.parser.elementInScope("p"):
965+
self.endTagP("p")
965966
self.parser.insertElement(name, attributes)
966967
self.parser.openElements.pop()
967968

@@ -973,14 +974,14 @@ def startTagImage(self, name, attributes):
973974
def startTagInput(self, name, attributes):
974975
self.parser.reconstructActiveFormattingElements()
975976
self.parser.insertElement(name, attributes)
976-
if self.parser.formPointer is not None:
977+
if self.parser.formPointer:
977978
# XXX Not exactly sure what to do here
978979
self.parser.openElements[-1].form = self.parser.formPointer
979980
self.parser.openElements.pop()
980981

981982
def startTagIsIndex(self, name, attributes):
982983
self.parser.parseError()
983-
if self.parser.formPointer is not None:
984+
if self.parser.formPointer:
984985
return
985986
self.parser.processStartTag("form", [])
986987
self.parser.processStartTag("hr", [])
@@ -1060,7 +1061,7 @@ def processEndTag(self, name):
10601061
def endTagP(self, name):
10611062
self.parser.generateImpliedEndTags("p")
10621063
if self.parser.openElements[-1].name != "p":
1063-
self.parser.parseError()
1064+
self.parser.parseError()
10641065
while self.parser.elementInScope("p"):
10651066
self.parser.openElements.pop()
10661067

0 commit comments

Comments
 (0)