Cleanup last_loaded_url/last_url handling in ScriptTask::load.

This commit is contained in:
Ms2ger 2014-12-06 11:04:04 +01:00
parent 6374d74d6e
commit 69e13f3267

View file

@ -693,20 +693,17 @@ impl ScriptTask {
message for a layout channel that is not associated with this script task. This message for a layout channel that is not associated with this script task. This
is a bug."); is a bug.");
let last_loaded_url = replace(&mut *page.mut_url(), None); let last_url = match &mut *page.mut_url() {
match last_loaded_url { &Some((ref mut loaded, ref mut needs_reflow)) if *loaded == url => {
Some((ref loaded, needs_reflow)) if *loaded == url => { if replace(needs_reflow, false) {
*page.mut_url() = Some((loaded.clone(), false));
if needs_reflow {
self.force_reflow(&*page); self.force_reflow(&*page);
} }
return; return;
}, },
_ => (), url => replace(url, None).map(|(loaded, _)| loaded),
} };
let is_javascript = url.scheme.as_slice() == "javascript"; let is_javascript = url.scheme.as_slice() == "javascript";
let last_url = last_loaded_url.map(|(ref loaded, _)| loaded.clone());
let cx = self.js_context.borrow(); let cx = self.js_context.borrow();
let cx = cx.as_ref().unwrap(); let cx = cx.as_ref().unwrap();