diff options
author | bors-servo <lbergstrom+bors@mozilla.com> | 2017-02-15 11:11:40 -0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-02-15 11:11:40 -0800 |
commit | 3c8daca772aacf59bffdff32b017f8029437a85e (patch) | |
tree | 6960bd16aec0717e798482d6443a458880e6027f /components/script | |
parent | 34fb10bd406cd71cd76840b539faed20b33791a0 (diff) | |
parent | d8e9e6c6606f2196fefbe41acd9ec37023ae8fcc (diff) | |
download | servo-3c8daca772aacf59bffdff32b017f8029437a85e.tar.gz servo-3c8daca772aacf59bffdff32b017f8029437a85e.zip |
Auto merge of #15561 - saneyuki:rm-domrefcell-heap, r=mbrubeck
Stop using DOMRefCell<Heap<..>>
Fix https://github.com/servo/servo/issues/15560
<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/15561)
<!-- Reviewable:end -->
Diffstat (limited to 'components/script')
-rw-r--r-- | components/script/dom/vrpose.rs | 32 |
1 files changed, 15 insertions, 17 deletions
diff --git a/components/script/dom/vrpose.rs b/components/script/dom/vrpose.rs index c292de9758b..96fa0597a3a 100644 --- a/components/script/dom/vrpose.rs +++ b/components/script/dom/vrpose.rs @@ -3,7 +3,6 @@ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ use core::nonzero::NonZero; -use dom::bindings::cell::DOMRefCell; use dom::bindings::codegen::Bindings::VRPoseBinding; use dom::bindings::codegen::Bindings::VRPoseBinding::VRPoseMethods; use dom::bindings::js::Root; @@ -17,19 +16,18 @@ use webvr_traits::webvr; #[dom_struct] pub struct VRPose { reflector_: Reflector, - position: DOMRefCell<Heap<*mut JSObject>>, - orientation: DOMRefCell<Heap<*mut JSObject>>, - linear_vel: DOMRefCell<Heap<*mut JSObject>>, - angular_vel: DOMRefCell<Heap<*mut JSObject>>, - linear_acc: DOMRefCell<Heap<*mut JSObject>>, - angular_acc: DOMRefCell<Heap<*mut JSObject>> + position: Heap<*mut JSObject>, + orientation: Heap<*mut JSObject>, + linear_vel: Heap<*mut JSObject>, + angular_vel: Heap<*mut JSObject>, + linear_acc: Heap<*mut JSObject>, + angular_acc: Heap<*mut JSObject>, } #[allow(unsafe_code)] unsafe fn update_or_create_typed_array(cx: *mut JSContext, src: Option<&[f32]>, - dst: &DOMRefCell<Heap<*mut JSObject>>) { - let dst = dst.borrow(); + dst: &Heap<*mut JSObject>) { match src { Some(data) => { if dst.get().is_null() { @@ -51,8 +49,8 @@ unsafe fn update_or_create_typed_array(cx: *mut JSContext, #[inline] #[allow(unsafe_code)] -fn heap_to_option(heap: &DOMRefCell<Heap<*mut JSObject>>) -> Option<NonZero<*mut JSObject>> { - let js_object = heap.borrow_mut().get(); +fn heap_to_option(heap: &Heap<*mut JSObject>) -> Option<NonZero<*mut JSObject>> { + let js_object = heap.get(); if js_object.is_null() { None } else { @@ -66,12 +64,12 @@ impl VRPose { fn new_inherited() -> VRPose { VRPose { reflector_: Reflector::new(), - position: DOMRefCell::new(Heap::default()), - orientation: DOMRefCell::new(Heap::default()), - linear_vel: DOMRefCell::new(Heap::default()), - angular_vel: DOMRefCell::new(Heap::default()), - linear_acc: DOMRefCell::new(Heap::default()), - angular_acc: DOMRefCell::new(Heap::default()) + position: Heap::default(), + orientation: Heap::default(), + linear_vel: Heap::default(), + angular_vel: Heap::default(), + linear_acc: Heap::default(), + angular_acc: Heap::default(), } } |