Re: Issues arising from not reparsing

On Sun, 11 Oct 2009 21:36:02 +0200, Ian Hickson <ian@hixie.ch> wrote:

>
> So the proposed changes to the spec are:
>  * in the Data state, while the escape flag is true, if the last start
>     tag token emitted had the tag name "script", if you consume "t",

...or "T"


> then:
>
>      if the previous characters were an ASCII case-insensitive match for
>      "<scrip", then set the inner escape flag to true also,
>
>      if the previous characters were an ASCII case-insensitive match for
>      "</scrip", then set both escape and inner escape flags to false,

Just the inner escape flag. (I had in mind resetting the inner escape flag  
in the close tag open state, but I think either works.)


>   * whenever the escape flag is set to false (-->), also set the
>     inner-escape flag to false,
>  * for "<" in the Data state, you always switch to the Tag open state,  
> and
>  * in the RCDATA/RAWTEXT bit at the top of the Close tag open state, add
>     to the end of the first paragraph "or they are but the escape flag is
>     true and either the last start tag token emitted did not have the tag
>     name "script", or it was and the inner-escape flag is true"
>
> ...?

The flags should be reset in the "Otherwise, ..." paragraph in the close  
tag open state.

-- 
Simon Pieters
Opera Software

Received on Monday, 12 October 2009 07:02:50 UTC