aboutsummaryrefslogtreecommitdiffstats
path: root/components/script/dom/htmlanchorelement.rs
diff options
context:
space:
mode:
authorbors-servo <metajack+bors@gmail.com>2015-08-08 06:09:13 -0600
committerbors-servo <metajack+bors@gmail.com>2015-08-08 06:09:13 -0600
commita0af7a1581ffaa6b40149affdd5519caa2be015f (patch)
tree216bba13121a21216c11dbab5b64492a2084a70f /components/script/dom/htmlanchorelement.rs
parentd8b4611a79fbb8c4675d9de763280ada34e63b13 (diff)
parent7e179d924525096aa1f7ee0db1c52f8e85533107 (diff)
downloadservo-a0af7a1581ffaa6b40149affdd5519caa2be015f.tar.gz
servo-a0af7a1581ffaa6b40149affdd5519caa2be015f.zip
Auto merge of #7075 - Ms2ger:load_url, r=dzbarsky
Improve code around Window::load_url. <!-- Reviewable:start --> [<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/7075) <!-- Reviewable:end -->
Diffstat (limited to 'components/script/dom/htmlanchorelement.rs')
-rw-r--r--components/script/dom/htmlanchorelement.rs10
1 files changed, 9 insertions, 1 deletions
diff --git a/components/script/dom/htmlanchorelement.rs b/components/script/dom/htmlanchorelement.rs
index bace18798ed..2774b74a60a 100644
--- a/components/script/dom/htmlanchorelement.rs
+++ b/components/script/dom/htmlanchorelement.rs
@@ -29,6 +29,8 @@ use std::default::Default;
use string_cache::Atom;
use util::str::DOMString;
+use url::UrlParser;
+
#[dom_struct]
pub struct HTMLAnchorElement {
htmlelement: HTMLElement,
@@ -155,7 +157,13 @@ impl<'a> Activatable for &'a HTMLAnchorElement {
value.push_str(&suffix);
}
debug!("clicked on link to {}", value);
- doc.r().load_anchor_href(value);
+
+ let window = doc.window();
+ let base_url = window.get_url();
+ let url = UrlParser::new().base_url(&base_url).parse(&value);
+ // FIXME: handle URL parse errors more gracefully.
+ let url = url.unwrap();
+ window.load_url(url);
}
//TODO:https://html.spec.whatwg.org/multipage/#the-a-element