From 1fbf9f7749e770904a9c31176bd576e7264d9c0a Mon Sep 17 00:00:00 2001 From: Ms2ger Date: Wed, 16 Jul 2014 11:26:50 +0200 Subject: [PATCH] Implement WorkerGlobalScope.self. --- src/components/script/dom/webidls/WorkerGlobalScope.webidl | 2 +- src/components/script/dom/workerglobalscope.rs | 5 +++++ 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/src/components/script/dom/webidls/WorkerGlobalScope.webidl b/src/components/script/dom/webidls/WorkerGlobalScope.webidl index 1b20c5eb190..a8e3b92d193 100644 --- a/src/components/script/dom/webidls/WorkerGlobalScope.webidl +++ b/src/components/script/dom/webidls/WorkerGlobalScope.webidl @@ -5,7 +5,7 @@ // http://www.whatwg.org/html/#workerglobalscope //[Exposed=Worker] interface WorkerGlobalScope : EventTarget { - //readonly attribute WorkerGlobalScope self; + readonly attribute WorkerGlobalScope self; //readonly attribute WorkerLocation location; //void close(); diff --git a/src/components/script/dom/workerglobalscope.rs b/src/components/script/dom/workerglobalscope.rs index b12e27d708c..e6f9235723d 100644 --- a/src/components/script/dom/workerglobalscope.rs +++ b/src/components/script/dom/workerglobalscope.rs @@ -46,10 +46,15 @@ impl WorkerGlobalScope { } pub trait WorkerGlobalScopeMethods { + fn Self(&self) -> Temporary; fn Console(&self) -> Temporary; } impl<'a> WorkerGlobalScopeMethods for JSRef<'a, WorkerGlobalScope> { + fn Self(&self) -> Temporary { + Temporary::from_rooted(self) + } + fn Console(&self) -> Temporary { if self.console.get().is_none() { let console = Console::new(&global::Worker(*self));