gecko/js/xpconnect/wrappers
Boris Zbarsky 7041704c76 Bug 861493. When passing arguments to an Xray for a WebIDL constructor, make sure to do the argument unwrapping before entering the content compartment. r=bholley,waldo
There are several changes here:

1) Adds some MutableThis methods to Optional, Nullable, and dictionaries to
   effectively allow doing a const_cast without knowing the actual type being
   templated over.  I needed this because I do not in fact know that type in
   the relevant code.  I'm open to suggestions for a better name for this
   method.
2) Adds some operator& to RootedJSValue to make it look more like a JS::Value,
   and in particular so I can JS_WrapValue the thing in it.
3) Adds a Slot() method to NonNullLazyRootedObject, just like NonNull has.
4) Adds an operator& to LazyRootedObject to make it look more like JSObject* so
   I can JS_WrapObject the thing in it.
5) Implements the actual rewrapping of the arguments into the content compartment.
6) Fixes a small preexisting bug in which we didn't look at named constructors
   in getTypesFromDescriptor (this was causing my tests to not compile).
7) Changes Xrays to not enter the content compartment when calling a WebIDL
   constructor.
8) Adds some friend API to report things as not being functions.
2013-04-25 19:03:05 -04:00
..
AccessCheck.cpp Bug 860494 - Check for native properties before checking named children on XOWs. r=bz 2013-04-23 12:50:17 -04:00
AccessCheck.h Bug 843829 - Wrap unwaived content JS objects in opaque wrappers for XBL scopes. r=mrbkap 2013-04-03 11:41:23 -07:00
ChromeObjectWrapper.cpp Bug 863289 - GC: Continue the rooting of XPConnect r=bholley 2013-04-17 16:38:44 +01:00
ChromeObjectWrapper.h Bug 828462 - Root Proxy/Wrapper in the browser. r=terrence,bz 2013-03-21 23:23:48 +01:00
FilteringWrapper.cpp Bug 864046 - GC: Almost the last rooting fixes in XPConnect - part 1 r=bholley 2013-04-20 10:41:47 +01:00
FilteringWrapper.h Bug 843829 - Wrap unwaived content JS objects in opaque wrappers for XBL scopes. r=mrbkap 2013-04-03 11:41:23 -07:00
Makefile.in Bug 846634 - Part 2: Move EXPORTS to moz.build; r=joey 2013-04-16 15:24:43 -04:00
moz.build Bug 846634 - Part 2: Move EXPORTS to moz.build; r=joey 2013-04-16 15:24:43 -04:00
WaiveXrayWrapper.cpp Bug 864046 - GC: Almost the last rooting fixes in XPConnect - part 1 r=bholley 2013-04-20 10:41:47 +01:00
WaiveXrayWrapper.h Bug 852602 - Pass CallArgs to Proxy call() and construct() hooks; r=Waldo 2013-04-04 09:02:24 +02:00
WrapperFactory.cpp Bug 863289 - GC: Continue the rooting of XPConnect r=bholley 2013-04-17 16:38:44 +01:00
WrapperFactory.h Bug 861281 - GC: Root the wrap object API r=terrence r=bholley 2013-04-15 18:32:55 +01:00
XrayWrapper.cpp Bug 861493. When passing arguments to an Xray for a WebIDL constructor, make sure to do the argument unwrapping before entering the content compartment. r=bholley,waldo 2013-04-25 19:03:05 -04:00
XrayWrapper.h Bug 861887 Review comments for prev patch r=bholley 2013-04-24 14:22:21 +01:00