From 111de569aceef01e743a7344306aa9a10de182c5 Mon Sep 17 00:00:00 2001 From: Glenn Watson Date: Tue, 16 Sep 2014 13:13:58 +1000 Subject: [PATCH] Handle src='' in an iframe element. Without this, infinitely creates iframes with the same url. --- components/script/dom/htmliframeelement.rs | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/components/script/dom/htmliframeelement.rs b/components/script/dom/htmliframeelement.rs index 7ca33cf8674..c819143211d 100644 --- a/components/script/dom/htmliframeelement.rs +++ b/components/script/dom/htmliframeelement.rs @@ -75,9 +75,14 @@ impl<'a> HTMLIFrameElementHelpers for JSRef<'a, HTMLIFrameElement> { fn get_url(&self) -> Option { let element: &JSRef = ElementCast::from_ref(self); element.get_attribute(Null, "src").root().and_then(|src| { - let window = window_from_node(self).root(); - UrlParser::new().base_url(&window.deref().page().get_url()) - .parse(src.deref().value().as_slice()).ok() + let url = src.deref().value(); + if url.as_slice().is_empty() { + None + } else { + let window = window_from_node(self).root(); + UrlParser::new().base_url(&window.deref().page().get_url()) + .parse(url.as_slice()).ok() + } }) }