diff --git a/src/components/script/dom/htmlscriptelement.rs b/src/components/script/dom/htmlscriptelement.rs
index 10e1a42e973..7d61e316a6f 100644
--- a/src/components/script/dom/htmlscriptelement.rs
+++ b/src/components/script/dom/htmlscriptelement.rs
@@ -52,9 +52,10 @@ impl<'a> HTMLScriptElementMethods for JSRef<'a, HTMLScriptElement> {
let node: &JSRef = NodeCast::from_ref(self);
let mut content = String::new();
for child in node.children() {
- if child.is_text() {
- let text: &JSRef = TextCast::to_ref(&child).unwrap();
- content.push_str(text.deref().characterdata.data.deref().borrow().as_slice());
+ let text: Option<&JSRef> = TextCast::to_ref(&child);
+ match text {
+ Some(text) => content.push_str(text.characterdata.data.borrow().as_slice()),
+ None => (),
}
}
content