mirror of
https://github.com/golang/go
synced 2024-11-22 04:34:39 -07:00
html: parse <frameset> inside body
Pass tests6.dat, test 47: <param><frameset></frameset> | <html> | <head> | <frameset> Also pass remaining tests in tests6.dat. R=nigeltao CC=golang-dev https://golang.org/cl/5489136
This commit is contained in:
parent
7ccd505dc4
commit
99fed2be27
@ -749,6 +749,19 @@ func inBodyIM(p *parser) bool {
|
|||||||
copyAttributes(body, p.tok)
|
copyAttributes(body, p.tok)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
case "frameset":
|
||||||
|
if !p.framesetOK || len(p.oe) < 2 || p.oe[1].Data != "body" {
|
||||||
|
// Ignore the token.
|
||||||
|
return true
|
||||||
|
}
|
||||||
|
body := p.oe[1]
|
||||||
|
if body.Parent != nil {
|
||||||
|
body.Parent.Remove(body)
|
||||||
|
}
|
||||||
|
p.oe = p.oe[:1]
|
||||||
|
p.addElement(p.tok.Data, p.tok.Attr)
|
||||||
|
p.im = inFramesetIM
|
||||||
|
return true
|
||||||
case "base", "basefont", "bgsound", "command", "link", "meta", "noframes", "script", "style", "title":
|
case "base", "basefont", "bgsound", "command", "link", "meta", "noframes", "script", "style", "title":
|
||||||
return inHeadIM(p)
|
return inHeadIM(p)
|
||||||
case "image":
|
case "image":
|
||||||
|
@ -183,7 +183,7 @@ func TestParser(t *testing.T) {
|
|||||||
{"tests3.dat", -1},
|
{"tests3.dat", -1},
|
||||||
{"tests4.dat", -1},
|
{"tests4.dat", -1},
|
||||||
{"tests5.dat", -1},
|
{"tests5.dat", -1},
|
||||||
{"tests6.dat", 47},
|
{"tests6.dat", -1},
|
||||||
{"tests10.dat", 30},
|
{"tests10.dat", 30},
|
||||||
}
|
}
|
||||||
for _, tf := range testFiles {
|
for _, tf := range testFiles {
|
||||||
|
Loading…
Reference in New Issue
Block a user