diff options
3 files changed, 79 insertions, 75 deletions
diff --git a/components/script/dom/htmlserializer.rs b/components/script/dom/htmlserializer.rs index 7d0cc77387c..9ad6cd77e3b 100644 --- a/components/script/dom/htmlserializer.rs +++ b/components/script/dom/htmlserializer.rs @@ -21,8 +21,8 @@ use std::borrow::ToOwned; pub fn serialize(iterator: &mut NodeIterator) -> String { let mut html = String::new(); let mut open_elements: Vec<String> = vec!(); - let depth = iterator.depth; - for node in iterator { + while let Some(node) = iterator.next() { + let depth = iterator.depth; while open_elements.len() > depth { html.push_str("</"); html.push_str(open_elements.pop().unwrap().as_slice()); diff --git a/tests/content/test_innerHTML.html b/tests/content/test_innerHTML.html index 710dc256de4..b140cfbe894 100644 --- a/tests/content/test_innerHTML.html +++ b/tests/content/test_innerHTML.html @@ -4,7 +4,9 @@ <script> var a = document.createElement("div"); a.appendChild(document.createElement("pre")).appendChild(new Text("")); - is(a.innerHTML, "<pre></pre>"); + var b = document.createElement("div"); + b.appendChild(a); + is(b.innerHTML, "<div><pre></pre></div>"); </script> </head> </html> diff --git a/tests/wpt/metadata/html/semantics/embedded-content/the-img-element/update-the-source-set.html.ini b/tests/wpt/metadata/html/semantics/embedded-content/the-img-element/update-the-source-set.html.ini index dc6f217a5af..4116da857ef 100644 --- a/tests/wpt/metadata/html/semantics/embedded-content/the-img-element/update-the-source-set.html.ini +++ b/tests/wpt/metadata/html/semantics/embedded-content/the-img-element/update-the-source-set.html.ini @@ -48,219 +48,221 @@ [<img srcset="data:,a" data-expect="data:,a">] expected: FAIL - [<picture></picture>foo<img src="data:,a" data-expect="data:,a">] + [<picture>foo<img src="data:,a" data-expect="data:,a"></picture>] expected: FAIL - [<picture></picture><!--foo--><img src="data:,a" data-expect="data:,a">] + [<picture><!--foo--><img src="data:,a" data-expect="data:,a"></picture>] expected: FAIL - [<picture></picture><br><img src="data:,a" data-expect="data:,a">] + [<picture><br><img src="data:,a" data-expect="data:,a"></picture>] expected: FAIL - [<picture></picture><p></p><img src="data:,a" data-expect="data:,a">] + [<picture><p></p><img src="data:,a" data-expect="data:,a"></picture>] expected: FAIL - [<picture></picture><video></video><source srcset="data:,b"><img src="data:,a" data-expect="data:,a">] + [<picture><video><source srcset="data:,b"></video><img src="data:,a" data-expect="data:,a"></picture>] expected: FAIL - [<picture></picture><span></span><source srcset="data:,b"><img src="data:,a" data-expect="data:,a">] + [<picture><span><source srcset="data:,b"></span><img src="data:,a" data-expect="data:,a"></picture>] expected: FAIL - [<picture></picture><img src="data:,a"><img src="data:,b" data-expect="data:,b">] + [<picture><svg><source srcset="data:,b"></svg><img src="data:,a" data-expect="data:,a"></picture>] expected: FAIL - [<picture></picture><img src="data:,a" data-expect="data:,a">foo] + [<picture><svg><source srcset="data:,b"><img src="data:,a" data-expect="data:,b"></svg></picture>] expected: FAIL - [<picture></picture><img src="data:,a" data-expect="data:,a"><br>] + [<picture><svg><font><source srcset="data:,b"></font></svg><font><img src="data:,a" data-expect="data:,a"></font></picture>] expected: FAIL - [<picture></picture><img src="data:,a" data-expect="data:,a"><!--foo-->] + [<picture><svg><!--<font face> tag breaks out of svg--><font face=""></font><source srcset="data:,b"></svg><img src="data:,a" data-expect="data:,b"></picture>] expected: FAIL - [<picture></picture><img src="data:,a" data-expect="data:,a"><img src="data:,b">] + [<picture><img src="data:,a"><img src="data:,b" data-expect="data:,b"></picture>] expected: FAIL - [<picture></picture><img data-expect=""><img src="data:,b">] + [<picture><source><img src="data:,a" data-expect="data:,a"></picture>] expected: FAIL - [<picture></picture><img src="data:,a" data-expect="data:,a"><source srcset="data:,b">] + [<picture><source src="data:,b"><img src="data:,a" data-expect="data:,a"></picture>] expected: FAIL - [<picture></picture><img data-expect=""><source srcset="data:,b">] + [<picture><source srcset=""><img src="data:,a" data-expect="data:,a"></picture>] expected: FAIL - [<picture></picture><svg></svg><source srcset="data:,b"><img src="data:,a" data-expect="data:,a">] + [<picture><source srcset=", ,"><img src="data:,a" data-expect="data:,a"></picture>] expected: FAIL - [<picture></picture><svg></svg><source srcset="data:,b"><img src="data:,a" data-expect="data:,b">] + [<picture><source srcset="data:,b 1x 1x"><img src="data:,a" data-expect="data:,a"></picture>] expected: FAIL - [<picture></picture><svg></svg><!--<font face> tag breaks out of svg--><font face=""></font><source srcset="data:,b"><img src="data:,a" data-expect="data:,b">] + [<picture><source srcset="data:,b" media=""><img src="data:,a" data-expect="data:,b"></picture>] expected: FAIL - [<picture></picture><source><img src="data:,a" data-expect="data:,a">] + [<picture><source srcset="data:,b" media="all"><img src="data:,a" data-expect="data:,b"></picture>] expected: FAIL - [<picture></picture><source src="data:,b"><img src="data:,a" data-expect="data:,a">] + [<picture><source srcset="data:,b" media="all and (min-width:0)"><img src="data:,a" data-expect="data:,b"></picture>] expected: FAIL - [<picture></picture><source srcset=""><img src="data:,a" data-expect="data:,a">] + [<picture><source srcset="data:,b" media="all and !"><img src="data:,a" data-expect="data:,a"></picture>] expected: FAIL - [<picture></picture><source srcset=", ,"><img src="data:,a" data-expect="data:,a">] + [<picture><source srcset="data:,b" media="all and (!)"><img src="data:,a" data-expect="data:,a"></picture>] expected: FAIL - [<picture></picture><source srcset="data:,b 1x 1x"><img src="data:,a" data-expect="data:,a">] + [<picture><source srcset="data:,b" media="not all"><img src="data:,a" data-expect="data:,a"></picture>] expected: FAIL - [<picture></picture><source srcset="data:,b" media=""><img src="data:,a" data-expect="data:,b">] + [<picture><source srcset="data:,b" media="not all and (min-width:0)"><img src="data:,a" data-expect="data:,a"></picture>] expected: FAIL - [<picture></picture><source srcset="data:,b" media="all"><img src="data:,a" data-expect="data:,b">] + [<picture><source srcset="data:,b" media="not all and (max-width:0)"><img src="data:,a" data-expect="data:,b"></picture>] expected: FAIL - [<picture></picture><source srcset="data:,b" media="all and (min-width:0)"><img src="data:,a" data-expect="data:,b">] + [<picture><source srcset="data:,b" media="not all and !"><img src="data:,a" data-expect="data:,a"></picture>] expected: FAIL - [<picture></picture><source srcset="data:,b" media="all and !"><img src="data:,a" data-expect="data:,a">] + [<picture><source srcset="data:,b" media="not all and (!)"><img src="data:,a" data-expect="data:,a"></picture>] expected: FAIL - [<picture></picture><source srcset="data:,b" media="all and (!)"><img src="data:,a" data-expect="data:,a">] + [<picture><source srcset="data:,b" media="all, !"><img src="data:,a" data-expect="data:,b"></picture>] expected: FAIL - [<picture></picture><source srcset="data:,b" media="not all"><img src="data:,a" data-expect="data:,a">] + [<picture><source srcset="data:,b" media=","><img src="data:,a" data-expect="data:,a"></picture>] expected: FAIL - [<picture></picture><source srcset="data:,b" media="not all and (min-width:0)"><img src="data:,a" data-expect="data:,a">] + [<picture><source srcset="data:,b" media=", all"><img src="data:,a" data-expect="data:,b"></picture>] expected: FAIL - [<picture></picture><source srcset="data:,b" media="not all and (max-width:0)"><img src="data:,a" data-expect="data:,b">] + [<picture><source srcset="data:,b" type=""><img src="data:,a" data-expect="data:,b"></picture>] expected: FAIL - [<picture></picture><source srcset="data:,b" media="not all and !"><img src="data:,a" data-expect="data:,a">] + [<picture><source srcset="data:,b" type=" "><img src="data:,a" data-expect="data:,b"></picture>] expected: FAIL - [<picture></picture><source srcset="data:,b" media="not all and (!)"><img src="data:,a" data-expect="data:,a">] + [<picture><source srcset="data:,b" type="image/gif"><img src="data:,a" data-expect="data:,b"></picture>] expected: FAIL - [<picture></picture><source srcset="data:,b" media="all, !"><img src="data:,a" data-expect="data:,b">] + [<picture><source srcset="data:,b" type=" image/gif"><img src="data:,a" data-expect="data:,b"></picture>] expected: FAIL - [<picture></picture><source srcset="data:,b" media=","><img src="data:,a" data-expect="data:,a">] + [<picture><source srcset="data:,b" type="image/gif "><img src="data:,a" data-expect="data:,b"></picture>] expected: FAIL - [<picture></picture><source srcset="data:,b" media=", all"><img src="data:,a" data-expect="data:,b">] + [<picture><source srcset="data:,b" type="image/gif;"><img src="data:,a" data-expect="data:,b"></picture>] expected: FAIL - [<picture></picture><source srcset="data:,b" type=""><img src="data:,a" data-expect="data:,b">] + [<picture><source srcset="data:,b" type="image/gif;encodings"><img src="data:,a" data-expect="data:,b"></picture>] expected: FAIL - [<picture></picture><source srcset="data:,b" type=" "><img src="data:,a" data-expect="data:,b">] + [<picture><source srcset="data:,b" type="image/gif;encodings="><img src="data:,a" data-expect="data:,b"></picture>] expected: FAIL - [<picture></picture><source srcset="data:,b" type="image/gif"><img src="data:,a" data-expect="data:,b">] + [<picture><source srcset="data:,b" type="image/gif;encodings=foobar"><img src="data:,a" data-expect="data:,b"></picture>] expected: FAIL - [<picture></picture><source srcset="data:,b" type=" image/gif"><img src="data:,a" data-expect="data:,b">] + [<picture><source srcset="data:,b" type="image/png"><img src="data:,a" data-expect="data:,b"></picture>] expected: FAIL - [<picture></picture><source srcset="data:,b" type="image/gif "><img src="data:,a" data-expect="data:,b">] + [<picture><source srcset="data:,b" type="image/jpeg"><img src="data:,a" data-expect="data:,b"></picture>] expected: FAIL - [<picture></picture><source srcset="data:,b" type="image/gif;"><img src="data:,a" data-expect="data:,b">] + [<picture><source srcset="data:,b" type="image/svg+xml"><img src="data:,a" data-expect="data:,b"></picture>] expected: FAIL - [<picture></picture><source srcset="data:,b" type="image/gif;encodings"><img src="data:,a" data-expect="data:,b">] + [<picture><source srcset="data:,b" type="image/x-icon"><img src="data:,a" data-expect="data:,b"></picture>] expected: FAIL - [<picture></picture><source srcset="data:,b" type="image/gif;encodings="><img src="data:,a" data-expect="data:,b">] + [<picture><source srcset="data:,b" type="text/xml"><img src="data:,a" data-expect="data:,a"></picture>] expected: FAIL - [<picture></picture><source srcset="data:,b" type="image/gif;encodings=foobar"><img src="data:,a" data-expect="data:,b">] + [<picture><source srcset="data:,b" type="text/html"><img src="data:,a" data-expect="data:,a"></picture>] expected: FAIL - [<picture></picture><source srcset="data:,b" type="image/png"><img src="data:,a" data-expect="data:,b">] + [<picture><source srcset="data:,b" type="text/plain"><img src="data:,a" data-expect="data:,a"></picture>] expected: FAIL - [<picture></picture><source srcset="data:,b" type="image/jpeg"><img src="data:,a" data-expect="data:,b">] + [<picture><source srcset="data:,b" type="text/css"><img src="data:,a" data-expect="data:,a"></picture>] expected: FAIL - [<picture></picture><source srcset="data:,b" type="image/svg+xml"><img src="data:,a" data-expect="data:,b">] + [<picture><source srcset="data:,b" type="video/mp4"><img src="data:,a" data-expect="data:,a"></picture>] expected: FAIL - [<picture></picture><source srcset="data:,b" type="image/x-icon"><img src="data:,a" data-expect="data:,b">] + [<picture><source srcset="data:,b" type="video/ogg"><img src="data:,a" data-expect="data:,a"></picture>] expected: FAIL - [<picture></picture><source srcset="data:,b" type="text/xml"><img src="data:,a" data-expect="data:,a">] + [<picture><source srcset="data:,b" type="video/webm"><img src="data:,a" data-expect="data:,a"></picture>] expected: FAIL - [<picture></picture><source srcset="data:,b" type="text/html"><img src="data:,a" data-expect="data:,a">] + [<picture><source srcset="data:,b" type="unknown/unknown"><img src="data:,a" data-expect="data:,a"></picture>] expected: FAIL - [<picture></picture><source srcset="data:,b" type="text/plain"><img src="data:,a" data-expect="data:,a">] + [<picture><source srcset="data:,b" type="application/octet-stream"><img src="data:,a" data-expect="data:,a"></picture>] expected: FAIL - [<picture></picture><source srcset="data:,b" type="text/css"><img src="data:,a" data-expect="data:,a">] + [<picture><source srcset="data:,b" type="application/x-shockwave-flash"><img src="data:,a" data-expect="data:,a"></picture>] expected: FAIL - [<picture></picture><source srcset="data:,b" type="video/mp4"><img src="data:,a" data-expect="data:,a">] + [<picture><source srcset="data:,b" type="image\gif"><img src="data:,a" data-expect="data:,a"></picture>] expected: FAIL - [<picture></picture><source srcset="data:,b" type="video/ogg"><img src="data:,a" data-expect="data:,a">] + [<picture><source srcset="data:,b" type="gif"><img src="data:,a" data-expect="data:,a"></picture>] expected: FAIL - [<picture></picture><source srcset="data:,b" type="video/webm"><img src="data:,a" data-expect="data:,a">] + [<picture><source srcset="data:,b" type=".gif"><img src="data:,a" data-expect="data:,a"></picture>] expected: FAIL - [<picture></picture><source srcset="data:,b" type="unknown/unknown"><img src="data:,a" data-expect="data:,a">] + [<picture><source srcset="data:,b" type="*"><img src="data:,a" data-expect="data:,a"></picture>] expected: FAIL - [<picture></picture><source srcset="data:,b" type="application/octet-stream"><img src="data:,a" data-expect="data:,a">] + [<picture><source srcset="data:,b" type="*/*"><img src="data:,a" data-expect="data:,a"></picture>] expected: FAIL - [<picture></picture><source srcset="data:,b" type="application/x-shockwave-flash"><img src="data:,a" data-expect="data:,a">] + [<picture><source srcset="data:,b" type="image/*"><img src="data:,a" data-expect="data:,a"></picture>] expected: FAIL - [<picture></picture><source srcset="data:,b" type="image\\gif"><img src="data:,a" data-expect="data:,a">] + [<picture><source srcset="data:,b" type=","><img src="data:,a" data-expect="data:,a"></picture>] expected: FAIL - [<picture></picture><source srcset="data:,b" type="gif"><img src="data:,a" data-expect="data:,a">] + [<picture><source srcset="data:,b" type="image/gif, image/png"><img src="data:,a" data-expect="data:,a"></picture>] expected: FAIL - [<picture></picture><source srcset="data:,b" type=".gif"><img src="data:,a" data-expect="data:,a">] + [<picture><source srcset="data:,b" type="image/gif image/png"><img src="data:,a" data-expect="data:,a"></picture>] expected: FAIL - [<picture></picture><source srcset="data:,b" type="*"><img src="data:,a" data-expect="data:,a">] + [<picture><source srcset="data:,b" type="image/foobarbaz"><img src="data:,a" data-expect="data:,a"></picture>] expected: FAIL - [<picture></picture><source srcset="data:,b" type="*/*"><img src="data:,a" data-expect="data:,a">] + [<picture><img src="data:,a" data-expect="data:,a">foo</picture>] expected: FAIL - [<picture></picture><source srcset="data:,b" type="image/*"><img src="data:,a" data-expect="data:,a">] + [<picture><img src="data:,a" data-expect="data:,a"><br></picture>] expected: FAIL - [<picture></picture><source srcset="data:,b" type=","><img src="data:,a" data-expect="data:,a">] + [<picture><img src="data:,a" data-expect="data:,a"><!--foo--></picture>] expected: FAIL - [<picture></picture><source srcset="data:,b" type="image/gif, image/png"><img src="data:,a" data-expect="data:,a">] + [<picture><img src="data:,a" data-expect="data:,a"><img src="data:,b"></picture>] expected: FAIL - [<picture></picture><source srcset="data:,b" type="image/gif image/png"><img src="data:,a" data-expect="data:,a">] + [<picture><img data-expect=""><img src="data:,b"></picture>] expected: FAIL - [<picture></picture><source srcset="data:,b" type="image/foobarbaz"><img src="data:,a" data-expect="data:,a">] + [<picture><img src="data:,a" data-expect="data:,a"><source srcset="data:,b"></picture>] expected: FAIL - [<picture></picture><span></span><source srcset="data:,b"><img data-expect="">] + [<picture><img data-expect=""><source srcset="data:,b"></picture>] expected: FAIL - [<picture></picture><source srcset="data:,b"><span></span><img src="data:,a" data-expect="data:,a">] + [<picture><span><source srcset="data:,b"><img data-expect=""></span></picture>] expected: FAIL - [<picture></picture><source srcset="data:,b"><img data-expect="data:,b">] + [<picture><span><source srcset="data:,b"><img src="data:,a" data-expect="data:,a"></span></picture>] expected: FAIL - [<picture></picture><svg></svg><font></font><source srcset="data:,b"><font></font><img src="data:,a" data-expect="data:,a">] + [<picture><source srcset="data:,b"><span><img src="data:,a" data-expect="data:,a"></span></picture>] expected: FAIL + [<picture><source srcset="data:,b"><img data-expect="data:,b"></picture>] + expected: FAIL |