diff options
author | ak1t0 <aktoo3097@gmail.com> | 2017-03-09 20:10:24 +0900 |
---|---|---|
committer | ak1t0 <aktoo3097@gmail.com> | 2017-03-13 21:52:04 +0900 |
commit | ad1e4475afc521f5701dd73b4d742346516992ca (patch) | |
tree | 40cd52f78e33ac5407d881d62d2f3f2e7d8eb174 | |
parent | dc3b32c853d51973cea98c235e7a9ab0bd00366e (diff) | |
download | servo-ad1e4475afc521f5701dd73b4d742346516992ca.tar.gz servo-ad1e4475afc521f5701dd73b4d742346516992ca.zip |
Clean up HTMLImageElement::areas
-rw-r--r-- | components/script/dom/htmlimageelement.rs | 25 |
1 files changed, 9 insertions, 16 deletions
diff --git a/components/script/dom/htmlimageelement.rs b/components/script/dom/htmlimageelement.rs index ecf63720845..1062bf48463 100644 --- a/components/script/dom/htmlimageelement.rs +++ b/components/script/dom/htmlimageelement.rs @@ -413,24 +413,17 @@ impl HTMLImageElement { } pub fn areas(&self) -> Option<Vec<Root<HTMLAreaElement>>> { let elem = self.upcast::<Element>(); - let usemap_attr; - if elem.has_attribute(&LocalName::from("usemap")) { - usemap_attr = elem.get_string_attribute(&local_name!("usemap")); - } else { - return None; - } - - let (first, last) = usemap_attr.split_at(1); - - match first { - "#" => {}, - _ => return None, + let usemap_attr = match elem.get_attribute(&ns!(), &local_name!("usemap")) { + Some(attr) => attr, + None => return None, }; - match last.len() { - 0 => return None, - _ => {}, - }; + let value = usemap_attr.value(); + let (first, last) = value.split_at(1); + + if first != "#" || last.len() == 0 { + return None + } let map = self.upcast::<Node>() .following_siblings() |