From ffdc3f5b32a345b88eed774848924e862d47c093 Mon Sep 17 00:00:00 2001 From: Josh Matthews Date: Fri, 28 Mar 2014 10:17:56 -0400 Subject: Turn on GC all the time. Fix rooting errors during parsing and storing timers. Fix borrow errors during tracing. --- src/components/script/dom/processinginstruction.rs | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'src/components/script/dom/processinginstruction.rs') diff --git a/src/components/script/dom/processinginstruction.rs b/src/components/script/dom/processinginstruction.rs index e39286d9aaa..7064f8d3ca7 100644 --- a/src/components/script/dom/processinginstruction.rs +++ b/src/components/script/dom/processinginstruction.rs @@ -4,7 +4,7 @@ use dom::bindings::codegen::BindingDeclarations::ProcessingInstructionBinding; use dom::bindings::codegen::InheritTypes::ProcessingInstructionDerived; -use dom::bindings::js::JS; +use dom::bindings::js::{JS, JSRef}; use dom::characterdata::CharacterData; use dom::document::Document; use dom::eventtarget::{EventTarget, NodeTargetTypeId}; @@ -35,8 +35,8 @@ impl ProcessingInstruction { } } - pub fn new(target: DOMString, data: DOMString, document: &JS) -> JS { - let node = ProcessingInstruction::new_inherited(target, data, document.clone()); + pub fn new(target: DOMString, data: DOMString, document: &JSRef) -> JS { + let node = ProcessingInstruction::new_inherited(target, data, document.unrooted()); Node::reflect_node(~node, document, ProcessingInstructionBinding::Wrap) } } -- cgit v1.2.3 From d7b96db33ca8f2b8a162df38e0f00e95f5ea6fa1 Mon Sep 17 00:00:00 2001 From: Josh Matthews Date: Mon, 31 Mar 2014 18:41:28 -0400 Subject: Implement safe rooting strategy via Unrooted, Root, JSRef, and JS. --- src/components/script/dom/processinginstruction.rs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'src/components/script/dom/processinginstruction.rs') diff --git a/src/components/script/dom/processinginstruction.rs b/src/components/script/dom/processinginstruction.rs index 7064f8d3ca7..c094e4ae654 100644 --- a/src/components/script/dom/processinginstruction.rs +++ b/src/components/script/dom/processinginstruction.rs @@ -4,7 +4,7 @@ use dom::bindings::codegen::BindingDeclarations::ProcessingInstructionBinding; use dom::bindings::codegen::InheritTypes::ProcessingInstructionDerived; -use dom::bindings::js::{JS, JSRef}; +use dom::bindings::js::{JS, JSRef, Unrooted}; use dom::characterdata::CharacterData; use dom::document::Document; use dom::eventtarget::{EventTarget, NodeTargetTypeId}; @@ -35,7 +35,7 @@ impl ProcessingInstruction { } } - pub fn new(target: DOMString, data: DOMString, document: &JSRef) -> JS { + pub fn new(target: DOMString, data: DOMString, document: &JSRef) -> Unrooted { let node = ProcessingInstruction::new_inherited(target, data, document.unrooted()); Node::reflect_node(~node, document, ProcessingInstructionBinding::Wrap) } -- cgit v1.2.3 From 76783b029e5e10da7fd61ab356a8f80a1eaf32e0 Mon Sep 17 00:00:00 2001 From: Josh Matthews Date: Thu, 10 Apr 2014 21:29:54 -0400 Subject: Move WebIDL methods to traits implemented by JSRef types. --- src/components/script/dom/processinginstruction.rs | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) (limited to 'src/components/script/dom/processinginstruction.rs') diff --git a/src/components/script/dom/processinginstruction.rs b/src/components/script/dom/processinginstruction.rs index c094e4ae654..ee88cb51bf6 100644 --- a/src/components/script/dom/processinginstruction.rs +++ b/src/components/script/dom/processinginstruction.rs @@ -41,8 +41,13 @@ impl ProcessingInstruction { } } -impl ProcessingInstruction { - pub fn Target(&self) -> DOMString { +pub trait ProcessingInstructionMethods { + fn Target(&self) -> DOMString; +} + +impl<'a> ProcessingInstructionMethods for JSRef<'a, ProcessingInstruction> { + fn Target(&self) -> DOMString { self.target.clone() } } + -- cgit v1.2.3 From 522d3f167b12fa79401eea5525c7b6133cae0f06 Mon Sep 17 00:00:00 2001 From: Josh Matthews Date: Thu, 17 Apr 2014 17:08:00 -0400 Subject: s/Unrooted/Temporary/g --- src/components/script/dom/processinginstruction.rs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'src/components/script/dom/processinginstruction.rs') diff --git a/src/components/script/dom/processinginstruction.rs b/src/components/script/dom/processinginstruction.rs index ee88cb51bf6..9a00333fd93 100644 --- a/src/components/script/dom/processinginstruction.rs +++ b/src/components/script/dom/processinginstruction.rs @@ -4,7 +4,7 @@ use dom::bindings::codegen::BindingDeclarations::ProcessingInstructionBinding; use dom::bindings::codegen::InheritTypes::ProcessingInstructionDerived; -use dom::bindings::js::{JS, JSRef, Unrooted}; +use dom::bindings::js::{JS, JSRef, Temporary}; use dom::characterdata::CharacterData; use dom::document::Document; use dom::eventtarget::{EventTarget, NodeTargetTypeId}; @@ -35,7 +35,7 @@ impl ProcessingInstruction { } } - pub fn new(target: DOMString, data: DOMString, document: &JSRef) -> Unrooted { + pub fn new(target: DOMString, data: DOMString, document: &JSRef) -> Temporary { let node = ProcessingInstruction::new_inherited(target, data, document.unrooted()); Node::reflect_node(~node, document, ProcessingInstructionBinding::Wrap) } -- cgit v1.2.3 From 0f2d0b1dc3d98ef109627dda061c5a54ff06a91d Mon Sep 17 00:00:00 2001 From: Josh Matthews Date: Fri, 18 Apr 2014 00:12:52 -0400 Subject: Address review comments. --- src/components/script/dom/processinginstruction.rs | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'src/components/script/dom/processinginstruction.rs') diff --git a/src/components/script/dom/processinginstruction.rs b/src/components/script/dom/processinginstruction.rs index 9a00333fd93..1152a9c20b2 100644 --- a/src/components/script/dom/processinginstruction.rs +++ b/src/components/script/dom/processinginstruction.rs @@ -4,7 +4,7 @@ use dom::bindings::codegen::BindingDeclarations::ProcessingInstructionBinding; use dom::bindings::codegen::InheritTypes::ProcessingInstructionDerived; -use dom::bindings::js::{JS, JSRef, Temporary}; +use dom::bindings::js::{JSRef, Temporary}; use dom::characterdata::CharacterData; use dom::document::Document; use dom::eventtarget::{EventTarget, NodeTargetTypeId}; @@ -28,7 +28,7 @@ impl ProcessingInstructionDerived for EventTarget { } impl ProcessingInstruction { - pub fn new_inherited(target: DOMString, data: DOMString, document: JS) -> ProcessingInstruction { + pub fn new_inherited(target: DOMString, data: DOMString, document: &JSRef) -> ProcessingInstruction { ProcessingInstruction { characterdata: CharacterData::new_inherited(ProcessingInstructionNodeTypeId, data, document), target: target @@ -36,7 +36,7 @@ impl ProcessingInstruction { } pub fn new(target: DOMString, data: DOMString, document: &JSRef) -> Temporary { - let node = ProcessingInstruction::new_inherited(target, data, document.unrooted()); + let node = ProcessingInstruction::new_inherited(target, data, document); Node::reflect_node(~node, document, ProcessingInstructionBinding::Wrap) } } -- cgit v1.2.3 From 91278da9dd55582401154e07f9eea34425a332c2 Mon Sep 17 00:00:00 2001 From: Josh Matthews Date: Thu, 24 Apr 2014 13:03:19 -0400 Subject: Address review comments. --- src/components/script/dom/processinginstruction.rs | 1 - 1 file changed, 1 deletion(-) (limited to 'src/components/script/dom/processinginstruction.rs') diff --git a/src/components/script/dom/processinginstruction.rs b/src/components/script/dom/processinginstruction.rs index 1152a9c20b2..2b7846b9f53 100644 --- a/src/components/script/dom/processinginstruction.rs +++ b/src/components/script/dom/processinginstruction.rs @@ -50,4 +50,3 @@ impl<'a> ProcessingInstructionMethods for JSRef<'a, ProcessingInstruction> { self.target.clone() } } - -- cgit v1.2.3