mirror of
https://github.com/servo/servo.git
synced 2025-08-05 13:40:08 +01:00
Properly coalesce whitespace when given a reference child (fixes #15979)
This commit is contained in:
parent
0a0fb61b48
commit
0d904e387e
2 changed files with 6 additions and 13 deletions
|
@ -657,7 +657,12 @@ fn insert(parent: &Node, reference_child: Option<&Node>, child: NodeOrText<JS<No
|
||||||
parent.InsertBefore(&n, reference_child).unwrap();
|
parent.InsertBefore(&n, reference_child).unwrap();
|
||||||
},
|
},
|
||||||
NodeOrText::AppendText(t) => {
|
NodeOrText::AppendText(t) => {
|
||||||
if let Some(text) = parent.GetLastChild().and_then(Root::downcast::<Text>) {
|
let text = reference_child
|
||||||
|
.and_then(Node::GetPreviousSibling)
|
||||||
|
.or_else(|| parent.GetLastChild())
|
||||||
|
.and_then(Root::downcast::<Text>);
|
||||||
|
|
||||||
|
if let Some(text) = text {
|
||||||
text.upcast::<CharacterData>().append_data(&t);
|
text.upcast::<CharacterData>().append_data(&t);
|
||||||
} else {
|
} else {
|
||||||
let text = Text::new(String::from(t).into(), &parent.owner_doc());
|
let text = Text::new(String::from(t).into(), &parent.owner_doc());
|
||||||
|
|
|
@ -1,12 +0,0 @@
|
||||||
[html5lib_template.html?run_type=write]
|
|
||||||
type: testharness
|
|
||||||
|
|
||||||
[html5lib_template.html?run_type=write_single]
|
|
||||||
type: testharness
|
|
||||||
[html5lib_template.html 574a95fc9c9f2de3aeaa0c9ee1e6967fc3d4770d]
|
|
||||||
expected: FAIL
|
|
||||||
bug: https://github.com/servo/servo/issues/15979
|
|
||||||
|
|
||||||
|
|
||||||
[html5lib_template.html?run_type=uri]
|
|
||||||
type: testharness
|
|
Loading…
Add table
Add a link
Reference in a new issue