aboutsummaryrefslogtreecommitdiffstats
path: root/components/script/dom/node.rs
diff options
context:
space:
mode:
authorAnthony Ramine <n.oxyde@gmail.com>2015-11-13 13:21:31 +0100
committerAnthony Ramine <n.oxyde@gmail.com>2015-12-13 21:14:34 +0100
commit1dd7c8cf01b27f63951504a63f5c69cca53ac73a (patch)
tree66a17c151ccf0433e6ce003aac3ccfeadb36e904 /components/script/dom/node.rs
parent7e1e34e7d5d9a60b42c15f88eee6879138676e66 (diff)
downloadservo-1dd7c8cf01b27f63951504a63f5c69cca53ac73a.tar.gz
servo-1dd7c8cf01b27f63951504a63f5c69cca53ac73a.zip
Introduce CharacterData::clone_with_data()
Diffstat (limited to 'components/script/dom/node.rs')
-rw-r--r--components/script/dom/node.rs17
1 files changed, 2 insertions, 15 deletions
diff --git a/components/script/dom/node.rs b/components/script/dom/node.rs
index 2d5605e47c4..a47e9340085 100644
--- a/components/script/dom/node.rs
+++ b/components/script/dom/node.rs
@@ -33,7 +33,6 @@ use dom::bindings::trace::JSTraceable;
use dom::bindings::trace::RootedVec;
use dom::bindings::xmlname::namespace_from_domstring;
use dom::characterdata::CharacterData;
-use dom::comment::Comment;
use dom::document::{Document, DocumentSource, IsHTMLDocument};
use dom::documentfragment::DocumentFragment;
use dom::documenttype::DocumentType;
@@ -1610,10 +1609,9 @@ impl Node {
let doc_fragment = DocumentFragment::new(document.r());
Root::upcast::<Node>(doc_fragment)
},
- NodeTypeId::CharacterData(CharacterDataTypeId::Comment) => {
+ NodeTypeId::CharacterData(_) => {
let cdata = node.downcast::<CharacterData>().unwrap();
- let comment = Comment::new(cdata.Data(), document.r());
- Root::upcast::<Node>(comment)
+ cdata.clone_with_data(cdata.Data(), &document)
},
NodeTypeId::Document(_) => {
let document = node.downcast::<Document>().unwrap();
@@ -1639,17 +1637,6 @@ impl Node {
document.r(), ElementCreator::ScriptCreated);
Root::upcast::<Node>(element)
},
- NodeTypeId::CharacterData(CharacterDataTypeId::Text) => {
- let cdata = node.downcast::<CharacterData>().unwrap();
- let text = Text::new(cdata.Data(), document.r());
- Root::upcast::<Node>(text)
- },
- NodeTypeId::CharacterData(CharacterDataTypeId::ProcessingInstruction) => {
- let pi = node.downcast::<ProcessingInstruction>().unwrap();
- let pi = ProcessingInstruction::new(pi.Target(),
- pi.upcast::<CharacterData>().Data(), document.r());
- Root::upcast::<Node>(pi)
- },
};
// Step 3.