{"push_id":733203423,"size":1,"distinct_size":1,"ref":"refs/heads/master","head":"f97e6a49fb679a250a6e35574633aec080dbf02b","before":"659465282d8be7e8ef867b0df475a846448d70eb","commits":[{"sha":"f97e6a49fb679a250a6e35574633aec080dbf02b","author":{"email":"365ec17a675f3273bc16c74761ad83f2cf07c59a","name":"user"},"message":"<s> strikeout tag doesn't ruin parser state\n\nIt was checking if it's a <style> tag and if not, going into TagName state and breaking out of the switch, which incremented the position (++pos). For <s>, that meant it went from 's' to '>' and assumed '>' was part of the tag name, then searched forward through the contents of the <s> tag for a whitespace or '>' character, continuing to build the tag name.\n\nAlso took the liberty of making the state machine a bit clearer, using the goto case statement. Unlike using continue, that skips the redundant check of what the state variable is. (i.e. continue = check to see that state is TagName, jump to state TagName, goto case TagName = just jump to state TagName). It might not even be necessary to say \"state = TagName\" in the goto case situations, but that's a bit squirrelier, so I left the state variable consistent.\n\nAlso found a few bugs, such as a </sty> tag switching to state TagName, not state Text! A few other places where it wasn't continuing, which makes ++pos skip over another character it should have rechecked. I might have been a bit too zealous there... works fine AFAICT, but there's some warnings about \"unreachable code\" now (i.e. less work for the computer yay, but shaky logic boo)","distinct":true,"url":"https://api.github.com/repos/cyisfor/htmld/commits/f97e6a49fb679a250a6e35574633aec080dbf02b"}]}