aboutsummaryrefslogtreecommitdiffstats
path: root/components/script/dom
diff options
context:
space:
mode:
Diffstat (limited to 'components/script/dom')
-rw-r--r--components/script/dom/node.rs17
1 files changed, 3 insertions, 14 deletions
diff --git a/components/script/dom/node.rs b/components/script/dom/node.rs
index b1c58dcaeab..ca5b14b192c 100644
--- a/components/script/dom/node.rs
+++ b/components/script/dom/node.rs
@@ -1887,24 +1887,13 @@ impl NodeMethods for Node {
// https://dom.spec.whatwg.org/#dom-node-nodevalue
fn GetNodeValue(&self) -> Option<DOMString> {
- match self.type_id() {
- NodeTypeId::CharacterData(..) => {
- let chardata = self.downcast::<CharacterData>().unwrap();
- Some(chardata.Data())
- }
- _ => {
- None
- }
- }
+ self.downcast::<CharacterData>().map(CharacterData::Data)
}
// https://dom.spec.whatwg.org/#dom-node-nodevalue
fn SetNodeValue(&self, val: Option<DOMString>) {
- match self.type_id() {
- NodeTypeId::CharacterData(..) => {
- self.SetTextContent(val)
- }
- _ => {}
+ if let Some(character_data) = self.downcast::<CharacterData>() {
+ character_data.SetData(val.unwrap_or(DOMString::new()));
}
}