From: Andrew Balholm Date: Sun, 20 May 2012 04:26:20 +0000 (+1000) Subject: exp/html: adjust inRowIM to match spec X-Git-Tag: go1.1rc2~3177 X-Git-Url: http://www.git.cypherpunks.su/?a=commitdiff_plain;h=4973c1fc7e050da54c3d741ceb57619a0a1ff1f7;p=gostls13.git exp/html: adjust inRowIM to match spec Delete cases that just fall down to "anything else" action. Handle , , and . R=golang-dev, nigeltao CC=golang-dev https://golang.org/cl/6203061 --- diff --git a/src/pkg/exp/html/parse.go b/src/pkg/exp/html/parse.go index ba1ff0b447..05c208edcc 100644 --- a/src/pkg/exp/html/parse.go +++ b/src/pkg/exp/html/parse.go @@ -1401,10 +1401,6 @@ func inTableBodyIM(p *parser) bool { // Section 12.2.5.4.14. func inRowIM(p *parser) bool { switch p.tok.Type { - case ErrorToken: - // TODO. - case TextToken: - // TODO. case StartTagToken: switch p.tok.Data { case "td", "th": @@ -1420,8 +1416,6 @@ func inRowIM(p *parser) bool { } // Ignore the token. return true - default: - // TODO. } case EndTagToken: switch p.tok.Data { @@ -1440,20 +1434,18 @@ func inRowIM(p *parser) bool { // Ignore the token. return true case "tbody", "tfoot", "thead": - // TODO. + if p.elementInScope(tableScope, p.tok.Data) { + p.parseImpliedToken(EndTagToken, "tr", nil) + return false + } + // Ignore the token. + return true case "body", "caption", "col", "colgroup", "html", "td", "th": // Ignore the token. return true - default: - // TODO. } - case CommentToken: - p.addChild(&Node{ - Type: CommentNode, - Data: p.tok.Data, - }) - return true } + return inTableIM(p) }