From a1bf49c1ce61e4df1b788960826b45c6469ad976 Mon Sep 17 00:00:00 2001 From: Tetsuharu OHZEKI Date: Fri, 30 May 2014 02:47:47 +0900 Subject: Use Cell instead of RefCell for Page.fragment_node. --- src/components/script/script_task.rs | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) (limited to 'src/components/script/script_task.rs') diff --git a/src/components/script/script_task.rs b/src/components/script/script_task.rs index 3a40303321b..ce268d35ff9 100644 --- a/src/components/script/script_task.rs +++ b/src/components/script/script_task.rs @@ -162,7 +162,7 @@ pub struct Page { resize_event: Untraceable>>>, /// Pending scroll to fragment event, if any - fragment_node: Traceable>>>, + fragment_node: Cell>>, /// Associated resource task for use by DOM objects like XMLHttpRequest pub resource_task: Untraceable, @@ -221,7 +221,7 @@ impl Page { url: Untraceable::new(RefCell::new(None)), next_subpage_id: Untraceable::new(Cell::new(SubpageId(0))), resize_event: Untraceable::new(Cell::new(None)), - fragment_node: Traceable::new(RefCell::new(None)), + fragment_node: Cell::new(None), last_reflow_id: Traceable::new(Cell::new(0)), resource_task: Untraceable::new(resource_task), constellation_chan: Untraceable::new(constellation_chan), @@ -1043,8 +1043,8 @@ impl ScriptTask { let _ = wintarget.dispatch_event_with_target(Some((*doctarget).clone()), &mut *event); - let mut fragment_node = page.fragment_node.deref().borrow_mut(); - (*fragment_node).assign(fragment.map_or(None, |fragid| page.find_fragment_node(fragid))); + let mut fragment_node = page.fragment_node.get(); + fragment_node.assign(fragment.map_or(None, |fragid| page.find_fragment_node(fragid))); let ConstellationChan(ref chan) = self.constellation_chan; chan.send(LoadCompleteMsg(page.id, url)); @@ -1080,7 +1080,7 @@ impl ScriptTask { page.reflow(ReflowForDisplay, self.chan.clone(), self.compositor) } - let mut fragment_node = page.fragment_node.deref().borrow_mut(); + let mut fragment_node = page.fragment_node.get(); match fragment_node.take().map(|node| node.root()) { Some(node) => self.scroll_fragment_point(pipeline_id, &*node), None => {} -- cgit v1.2.3