diff options
author | bors-servo <metajack+bors@gmail.com> | 2015-04-19 09:05:23 -0500 |
---|---|---|
committer | bors-servo <metajack+bors@gmail.com> | 2015-04-19 09:05:23 -0500 |
commit | 331708f0f6d4bff8cec608e963fb24f79cf1ffca (patch) | |
tree | f94555eea2d24da9f00281b79dcb63b1144e3feb /components/script/script_task.rs | |
parent | 40ee41ca92206768b53cb5768c0b38fd7ba439dc (diff) | |
parent | e0724ec9a9887c8332511f1054bbc2ae06343560 (diff) | |
download | servo-331708f0f6d4bff8cec608e963fb24f79cf1ffca.tar.gz servo-331708f0f6d4bff8cec608e963fb24f79cf1ffca.zip |
Auto merge of #5567 - boghison:document_rootedvec, r=jdm
Fixes #5539
<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/5567)
<!-- Reviewable:end -->
Diffstat (limited to 'components/script/script_task.rs')
-rw-r--r-- | components/script/script_task.rs | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/components/script/script_task.rs b/components/script/script_task.rs index 31116307b3c..4956e810d0f 100644 --- a/components/script/script_task.rs +++ b/components/script/script_task.rs @@ -28,7 +28,7 @@ use dom::bindings::js::{JS, JSRef, OptionalRootable, RootedReference}; use dom::bindings::js::{RootCollection, RootCollectionPtr}; use dom::bindings::refcounted::{LiveDOMReferences, Trusted, TrustedReference}; use dom::bindings::structuredclone::StructuredCloneData; -use dom::bindings::trace::{JSTraceable, trace_collections}; +use dom::bindings::trace::{JSTraceable, trace_collections, RootedVec}; use dom::bindings::utils::{wrap_for_same_compartment, pre_wrap}; use dom::document::{Document, IsHTMLDocument, DocumentHelpers, DocumentProgressHandler, DocumentProgressTask, DocumentSource}; use dom::element::{Element, AttributeHandlers}; @@ -1243,9 +1243,11 @@ impl ScriptTask { } let page = get_page(&self.root_page(), pipeline_id); let document = page.document().root(); - let mouse_over_targets = &mut *self.mouse_over_targets.borrow_mut(); + let mut mouse_over_targets = RootedVec::new(); + mouse_over_targets.append(&mut *self.mouse_over_targets.borrow_mut()); - document.r().handle_mouse_move_event(self.js_runtime.ptr, point, mouse_over_targets); + document.r().handle_mouse_move_event(self.js_runtime.ptr, point, &mut mouse_over_targets); + *self.mouse_over_targets.borrow_mut() = mouse_over_targets.clone(); } KeyEvent(key, state, modifiers) => { |