aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorak1t0 <aktoo3097@gmail.com>2017-03-09 20:10:24 +0900
committerak1t0 <aktoo3097@gmail.com>2017-03-13 21:52:04 +0900
commitad1e4475afc521f5701dd73b4d742346516992ca (patch)
tree40cd52f78e33ac5407d881d62d2f3f2e7d8eb174
parentdc3b32c853d51973cea98c235e7a9ab0bd00366e (diff)
downloadservo-ad1e4475afc521f5701dd73b4d742346516992ca.tar.gz
servo-ad1e4475afc521f5701dd73b4d742346516992ca.zip
Clean up HTMLImageElement::areas
-rw-r--r--components/script/dom/htmlimageelement.rs25
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()