@@ -827,6 +827,22 @@ def __init__(self, parser, tree):
827
827
])
828
828
self .endTagHandler .default = self .endTagOther
829
829
830
+ def processEOF (self ):
831
+ self .parser .parseError ("eof-in-head-noscript" )
832
+ self .anythingElse ()
833
+ return True
834
+
835
+ def processComment (self , token ):
836
+ return self .parser .phases ["inHead" ].processComment (token )
837
+
838
+ def processCharacters (self , token ):
839
+ self .parser .parseError ("char-in-head-noscript" )
840
+ self .anythingElse ()
841
+ return token
842
+
843
+ def processSpaceCharacters (self , token ):
844
+ return self .parser .phases ["inHead" ].processSpaceCharacters (token )
845
+
830
846
def startTagHtml (self , token ):
831
847
return self .parser .phases ["inBody" ].processStartTag (token )
832
848
@@ -837,23 +853,26 @@ def startTagHeadNoscript(self, token):
837
853
self .parser .parseError ("unexpected-start-tag" , {"name" : token ["name" ]})
838
854
839
855
def startTagOther (self , token ):
840
- return self .anythingElse (token )
856
+ self .parser .parseError ("unexpected-inhead-noscript-tag" , {"name" : token ["name" ]})
857
+ self .anythingElse ()
858
+ return token
841
859
842
860
def endTagNoscript (self , token ):
843
861
node = self .parser .tree .openElements .pop ()
844
862
assert node .name == "noscript" , "Expected noscript got %s" % node .name
845
863
self .parser .phase = self .parser .phases ["inHead" ]
846
864
847
865
def endTagBr (self , token ):
848
- return self .anythingElse (token )
866
+ self .parser .parseError ("unexpected-inhead-noscript-tag" , {"name" : token ["name" ]})
867
+ self .anythingElse ()
868
+ return token
849
869
850
870
def endTagOther (self , token ):
851
871
self .parser .parseError ("unexpected-end-tag" , {"name" : token ["name" ]})
852
872
853
- def anythingElse (self , token ):
854
- self . parser . parseError ( "unexpected-inhead-noscript-tag" , { "name" : token [ "name" ]})
873
+ def anythingElse (self ):
874
+ # Caller must raise parse error first!
855
875
self .endTagNoscript (impliedTagToken ("noscript" ))
856
- return token
857
876
858
877
class AfterHeadPhase (Phase ):
859
878
def __init__ (self , parser , tree ):
0 commit comments