@@ -844,7 +844,6 @@ def attributeNameState(self):
844844 self .tokenQueue .append ({"type" : tokenTypes ["ParseError" ], "data" :
845845 "eof-in-attribute-name" })
846846 self .state = self .dataState
847- emitToken = True
848847 else :
849848 self .currentToken ["data" ][- 1 ][0 ] += data
850849 leavingThisState = False
@@ -887,7 +886,7 @@ def afterAttributeNameState(self):
887886 elif data is EOF :
888887 self .tokenQueue .append ({"type" : tokenTypes ["ParseError" ], "data" :
889888 "expected-end-of-tag-but-got-eof" })
890- self .emitCurrentToken ()
889+ self .state = self . dataState
891890 else :
892891 self .currentToken ["data" ].append ([data , "" ])
893892 self .state = self .attributeNameState
@@ -916,7 +915,7 @@ def beforeAttributeValueState(self):
916915 elif data is EOF :
917916 self .tokenQueue .append ({"type" : tokenTypes ["ParseError" ], "data" :
918917 "expected-attribute-value-but-got-eof" })
919- self .emitCurrentToken ()
918+ self .state = self . dataState
920919 else :
921920 self .currentToken ["data" ][- 1 ][1 ] += data
922921 self .state = self .attributeValueUnQuotedState
@@ -931,7 +930,7 @@ def attributeValueDoubleQuotedState(self):
931930 elif data is EOF :
932931 self .tokenQueue .append ({"type" : tokenTypes ["ParseError" ], "data" :
933932 "eof-in-attribute-value-double-quote" })
934- self .emitCurrentToken ()
933+ self .state = self . dataState
935934 else :
936935 self .currentToken ["data" ][- 1 ][1 ] += data + \
937936 self .stream .charsUntil (("\" " , u"&" ))
@@ -946,7 +945,7 @@ def attributeValueSingleQuotedState(self):
946945 elif data is EOF :
947946 self .tokenQueue .append ({"type" : tokenTypes ["ParseError" ], "data" :
948947 "eof-in-attribute-value-single-quote" })
949- self .emitCurrentToken ()
948+ self .state = self . dataState
950949 else :
951950 self .currentToken ["data" ][- 1 ][1 ] += data + \
952951 self .stream .charsUntil (("'" , u"&" ))
@@ -967,7 +966,7 @@ def attributeValueUnQuotedState(self):
967966 elif data is EOF :
968967 self .tokenQueue .append ({"type" : tokenTypes ["ParseError" ], "data" :
969968 "eof-in-attribute-value-no-quotes" })
970- self .emitCurrentToken ()
969+ self .state = self . dataState
971970 else :
972971 self .currentToken ["data" ][- 1 ][1 ] += data + self .stream .charsUntil (
973972 frozenset ((u"&" , u">" , u'"' , u"'" , u"=" , u"<" , u"`" )) | spaceCharacters )
@@ -984,7 +983,6 @@ def afterAttributeValueState(self):
984983 elif data is EOF :
985984 self .tokenQueue .append ({"type" : tokenTypes ["ParseError" ], "data" :
986985 "unexpected-EOF-after-attribute-value" })
987- self .emitCurrentToken ()
988986 self .stream .unget (data )
989987 self .state = self .dataState
990988 else :
@@ -1151,11 +1149,6 @@ def commentEndState(self):
11511149 self .tokenQueue .append ({"type" : tokenTypes ["ParseError" ], "data" :
11521150 "unexpected-dash-after-double-dash-in-comment" })
11531151 self .currentToken ["data" ] += data
1154- elif data in spaceCharacters :
1155- self .currentToken ["data" ] += "--" + data
1156- self .tokenQueue .append ({"type" : tokenTypes ["ParseError" ], "data" :
1157- "unexpected-space-after-double-dash-in-comment" })
1158- self .state = self .commentEndSpaceState
11591152 elif data == "!" :
11601153 self .tokenQueue .append ({"type" : tokenTypes ["ParseError" ], "data" :
11611154 "unexpected-bang-after-double-dash-in-comment" })
@@ -1191,25 +1184,6 @@ def commentEndBangState(self):
11911184 self .state = self .commentState
11921185 return True
11931186
1194- def commentEndSpaceState (self ):
1195- data = self .stream .char ()
1196- if data == u">" :
1197- self .tokenQueue .append (self .currentToken )
1198- self .state = self .dataState
1199- elif data == u"-" :
1200- self .state = self .commentEndDashState
1201- elif data in spaceCharacters :
1202- self .currentToken ["data" ] += data
1203- elif data is EOF :
1204- self .tokenQueue .append ({"type" : tokenTypes ["ParseError" ], "data" :
1205- "eof-in-comment-end-space-state" })
1206- self .tokenQueue .append (self .currentToken )
1207- self .state = self .dataState
1208- else :
1209- self .currentToken ["data" ] += data
1210- self .state = self .commentState
1211- return True
1212-
12131187 def doctypeState (self ):
12141188 data = self .stream .char ()
12151189 if data in spaceCharacters :
0 commit comments