diff options
author | Anthony Ramine <n.oxyde@gmail.com> | 2017-01-09 16:34:44 +0100 |
---|---|---|
committer | Anthony Ramine <n.oxyde@gmail.com> | 2017-01-10 11:16:42 +0100 |
commit | d853e7fee943b6e0b677da82f805841a9d422d8c (patch) | |
tree | cf195e5020653cbd7a4f4bd86fb81cc66b95c8a2 /components/script/dom/servoparser/xml.rs | |
parent | ebd4a8b3ee1aab910ef714420a814912fec31e30 (diff) | |
download | servo-d853e7fee943b6e0b677da82f805841a9d422d8c.tar.gz servo-d853e7fee943b6e0b677da82f805841a9d422d8c.zip |
Unify text insertion when parsing HTML and XML
Diffstat (limited to 'components/script/dom/servoparser/xml.rs')
-rw-r--r-- | components/script/dom/servoparser/xml.rs | 12 |
1 files changed, 4 insertions, 8 deletions
diff --git a/components/script/dom/servoparser/xml.rs b/components/script/dom/servoparser/xml.rs index 6bab196d7ee..4a62be75cff 100644 --- a/components/script/dom/servoparser/xml.rs +++ b/components/script/dom/servoparser/xml.rs @@ -16,9 +16,9 @@ use dom::element::{Element, ElementCreator}; use dom::htmlscriptelement::HTMLScriptElement; use dom::node::Node; use dom::processinginstruction::ProcessingInstruction; -use dom::text::Text; use dom::virtualmethods::vtable_for; use html5ever::tokenizer::buffer_queue::BufferQueue; +use html5ever::tree_builder::{NodeOrText as H5eNodeOrText}; use html5ever_atoms::{Prefix, QualName}; use js::jsapi::JSTracer; use servo_url::ServoUrl; @@ -155,14 +155,10 @@ impl TreeSink for Sink { fn append(&mut self, parent: JS<Node>, child: NodeOrText<JS<Node>>) { let child = match child { - NodeOrText::AppendNode(n) => Root::from_ref(&*n), - NodeOrText::AppendText(t) => { - let s: String = t.into(); - let text = Text::new(DOMString::from(s), &self.document); - Root::upcast(text) - } + NodeOrText::AppendNode(n) => H5eNodeOrText::AppendNode(n), + NodeOrText::AppendText(s) => H5eNodeOrText::AppendText(s), }; - assert!(parent.AppendChild(&child).is_ok()); + super::insert(&*parent, None, child); } fn append_doctype_to_document(&mut self, name: StrTendril, public_id: StrTendril, |