Re: [dev-servo] DOM rooting is live

2014-05-07 Thread Patrick Walton
On 5/7/14 11:16 AM, Josh Matthews wrote: In the worst case, you have a GC hazard that is conceivably exploitable if the stars are in alignment. How would you create a `JS` on the stack? I would think that they aren't cloneable and the constructor for them is appropriately private. Patrick _

Re: [dev-servo] DOM rooting is live

2014-05-07 Thread Josh Matthews
{ What happens if I break this rule and allocate a JS on the stack, or return one from a function? Is that a memory safety violation? keegan - Original Message - From: "Josh Matthews" To: mozilla-dev-se...@lists.mozilla.org Sent: Saturday, May 3, 2014 12:30:55 PM Subject: [dev-

Re: [dev-servo] DOM rooting is live

2014-05-06 Thread Keegan McAllister
age - From: "Josh Matthews" To: mozilla-dev-se...@lists.mozilla.org Sent: Saturday, May 3, 2014 12:30:55 PM Subject: [dev-servo] DOM rooting is live https://github.com/mozilla/servo/pull/2101 has finally merged, so here's what you need to know if you're writing DOM code now: * me

Re: [dev-servo] DOM rooting is live

2014-05-03 Thread Manish Goregaokar
This is great! -Manish Goregaokar On Sun, May 4, 2014 at 1:04 AM, Patrick Walton wrote: > On 5/3/14 12:30 PM, Josh Matthews wrote: > >> Learn to love it. When you find a type error where something is asking >> for a JSRef and you're not providing it, that's a potential GC hazard >> that the co

Re: [dev-servo] DOM rooting is live

2014-05-03 Thread Patrick Walton
On 5/3/14 12:30 PM, Josh Matthews wrote: Learn to love it. When you find a type error where something is asking for a JSRef and you're not providing it, that's a potential GC hazard that the compiler is rejecting. Kudos! This is a major milestone. Patrick _

[dev-servo] DOM rooting is live

2014-05-03 Thread Josh Matthews
https://github.com/mozilla/servo/pull/2101 has finally merged, so here's what you need to know if you're writing DOM code now: * members of DOM types that are themselves DOM types must use JS (eg. parent_node: Option>) * all WebIDL methods for type Foo must be declared in a public FooMethods t