Fix a dynamic borrow failure with iframes

This commit is contained in:
Keegan McAllister 2014-03-03 15:00:12 -08:00
parent 4646975080
commit 6ad5597edd

View file

@ -811,12 +811,11 @@ impl ScriptTask {
// //
// Note: We can parse the next document in parallel with any previous documents. // Note: We can parse the next document in parallel with any previous documents.
let mut document = Document::new(&window, Some(url.clone()), HTMLDocument, None); let mut document = Document::new(&window, Some(url.clone()), HTMLDocument, None);
let next_subpage_id = page.next_subpage_id.borrow();
let html_parsing_result = hubbub_html_parser::parse_html(page, let html_parsing_result = hubbub_html_parser::parse_html(page,
&mut document, &mut document,
url.clone(), url.clone(),
self.resource_task.clone(), self.resource_task.clone(),
next_subpage_id.get().clone()); page.next_subpage_id.get());
let HtmlParserResult { let HtmlParserResult {
discovery_port discovery_port
@ -847,8 +846,7 @@ impl ScriptTask {
page.layout_chan.send(AddStylesheetMsg(sheet)); page.layout_chan.send(AddStylesheetMsg(sheet));
} }
Some(HtmlDiscoveredIFrame((iframe_url, subpage_id, sandboxed))) => { Some(HtmlDiscoveredIFrame((iframe_url, subpage_id, sandboxed))) => {
let mut next_subpage_id = page.next_subpage_id.borrow_mut(); page.next_subpage_id.set(SubpageId(*subpage_id + 1));
*next_subpage_id.get() = SubpageId(*subpage_id + 1);
let sandboxed = if sandboxed { let sandboxed = if sandboxed {
IFrameSandboxed IFrameSandboxed
} else { } else {