From: Andrew Balholm Date: Fri, 23 Dec 2011 00:07:11 +0000 (+1100) Subject: html: Don't ignore whitespace in "after after frameset" mode. X-Git-Tag: weekly.2011-12-22~7 X-Git-Url: http://www.git.cypherpunks.su/?a=commitdiff_plain;h=4a8ea4ae94c5db39f38cd1c8b7d0c8df6dc82f7b;p=gostls13.git html: Don't ignore whitespace in "after after frameset" mode. Pass tests6.dat, test 46: | | | | " " R=nigeltao CC=golang-dev https://golang.org/cl/5505065 --- diff --git a/src/pkg/html/parse.go b/src/pkg/html/parse.go index 67356e450c..6962e64393 100644 --- a/src/pkg/html/parse.go +++ b/src/pkg/html/parse.go @@ -1572,6 +1572,19 @@ func afterAfterFramesetIM(p *parser) bool { Type: CommentNode, Data: p.tok.Data, }) + case TextToken: + // Ignore all text but whitespace. + s := strings.Map(func(c rune) rune { + switch c { + case ' ', '\t', '\n', '\f', '\r': + return c + } + return -1 + }, p.tok.Data) + if s != "" { + p.reconstructActiveFormattingElements() + p.addText(s) + } case StartTagToken: switch p.tok.Data { case "html": diff --git a/src/pkg/html/parse_test.go b/src/pkg/html/parse_test.go index 1c2df5a7ee..015b5838f0 100644 --- a/src/pkg/html/parse_test.go +++ b/src/pkg/html/parse_test.go @@ -172,7 +172,7 @@ func TestParser(t *testing.T) { {"tests3.dat", -1}, {"tests4.dat", -1}, {"tests5.dat", -1}, - {"tests6.dat", 45}, + {"tests6.dat", 47}, {"tests10.dat", 16}, } for _, tf := range testFiles {