[Bug 11393] End tag fails to break out of foreign content

http://www.w3.org/Bugs/Public/show_bug.cgi?id=11393

Ian 'Hixie' Hickson <ian@hixie.ch> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|REOPENED                    |ASSIGNED
                 CC|                            |eseidel@apple.com,
                   |                            |hsivonen@iki.fi,
                   |                            |w3c@adambarth.com

--- Comment #6 from Ian 'Hixie' Hickson <ian@hixie.ch> 2011-02-09 01:01:55 UTC ---
I guess this is why we had a secondary insertion mode, back in the day. I knew
there had to be a reason!

As far as I can tell, this is actually a place where Henri's approach of
checking the namespace of the current node before each token, and switching to
foreign content mode that way, rather than using the insertion mode, results in
different behaviour. Indeed, WebKit and Gecko differ for
<table><caption><svg></table>, with WebKit following the spec, and Gecko doing
what James suggests.

I'm very reluctant to perform such deep surgery on the parser at this extremely
late stage, but since we don't have interop here, and since there's a (rather
minor) reason to prefer the non-spec behaviour here (see comment 4 paragraph
2), maybe it's worth it?

Adam, you're the one who'd be most impacted by this, do you have an opinion?
The proposal would be to add a branch before the insertion mode switch, which
checks the namespace of the current node, rather than having foreign lands be
an insertion mode, and to have what used to be the foreign content mode just
handle what happens when you get a token in foreign content (i.e. dropping the
first <dt> of the current definition).

-- 
Configure bugmail: http://www.w3.org/Bugs/Public/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.

Received on Wednesday, 9 February 2011 01:01:57 UTC