aboutsummaryrefslogtreecommitdiffstats
path: root/components/script/script_runtime.rs
diff options
context:
space:
mode:
authorAnthony Ramine <n.oxyde@gmail.com>2017-09-27 13:58:59 +0200
committerAnthony Ramine <n.oxyde@gmail.com>2017-09-27 13:58:59 +0200
commit8d566fbc3c1954b2da0b0e185e224d5bde99b8e3 (patch)
treeb8a6db458897c6686ed2da30aceeb3e5fdb028a1 /components/script/script_runtime.rs
parenta6d01c92d9a8a8d67cd8164916c86bf1928098f8 (diff)
downloadservo-8d566fbc3c1954b2da0b0e185e224d5bde99b8e3.tar.gz
servo-8d566fbc3c1954b2da0b0e185e224d5bde99b8e3.zip
Move script_runtime::StackRootTLS to root::ThreadLocalStackRoots
Diffstat (limited to 'components/script/script_runtime.rs')
-rw-r--r--components/script/script_runtime.rs22
1 files changed, 2 insertions, 20 deletions
diff --git a/components/script/script_runtime.rs b/components/script/script_runtime.rs
index e437e1a6001..7985f562cbe 100644
--- a/components/script/script_runtime.rs
+++ b/components/script/script_runtime.rs
@@ -7,7 +7,7 @@
use dom::bindings::codegen::Bindings::PromiseBinding::PromiseJobCallback;
use dom::bindings::refcounted::{LiveDOMReferences, trace_refcounted_objects};
-use dom::bindings::root::{RootCollection, RootCollectionPtr, trace_roots};
+use dom::bindings::root::trace_roots;
use dom::bindings::settings_stack;
use dom::bindings::trace::{JSTraceable, trace_traceables};
use dom::bindings::utils::DOM_CALLBACKS;
@@ -23,13 +23,12 @@ use js::panic::wrap_panic;
use js::rust::Runtime;
use microtask::{EnqueuedPromiseCallback, Microtask};
use profile_traits::mem::{Report, ReportKind, ReportsChan};
-use script_thread::{STACK_ROOTS, trace_thread};
+use script_thread::trace_thread;
use servo_config::opts;
use servo_config::prefs::PREFS;
use std::cell::Cell;
use std::fmt;
use std::io::{Write, stdout};
-use std::marker::PhantomData;
use std::os;
use std::os::raw::c_void;
use std::panic::AssertUnwindSafe;
@@ -102,23 +101,6 @@ pub trait ScriptPort {
fn recv(&self) -> Result<CommonScriptMsg, ()>;
}
-pub struct StackRootTLS<'a>(PhantomData<&'a u32>);
-
-impl<'a> StackRootTLS<'a> {
- pub fn new(roots: &'a RootCollection) -> StackRootTLS<'a> {
- STACK_ROOTS.with(|ref r| {
- r.set(Some(RootCollectionPtr(roots as *const _)))
- });
- StackRootTLS(PhantomData)
- }
-}
-
-impl<'a> Drop for StackRootTLS<'a> {
- fn drop(&mut self) {
- STACK_ROOTS.with(|ref r| r.set(None));
- }
-}
-
/// SM callback for promise job resolution. Adds a promise callback to the current
/// global's microtask queue.
#[allow(unsafe_code)]