@@ -66,8 +66,8 @@ GetXrayType(JSObject *obj)
6666 return NotXray;
6767}
6868
69- ResolvingId::ResolvingId (JSContext *cx, JSObject * wrapper, jsid id)
70- : mId (cx, id),
69+ ResolvingId::ResolvingId (JSContext *cx, HandleObject wrapper, HandleId id)
70+ : mId (id),
7171 mHolder (cx, getHolderObject(wrapper)),
7272 mPrev(getResolvingId(mHolder )),
7373 mXrayShadowing(false )
@@ -123,7 +123,7 @@ ResolvingId::getResolvingIdFromWrapper(JSObject *wrapper)
123123class MOZ_STACK_CLASS ResolvingIdDummy
124124{
125125public:
126- ResolvingIdDummy (JSContext *cx, JSObject * wrapper, jsid id)
126+ ResolvingIdDummy (JSContext *cx, HandleObject wrapper, HandleId id)
127127 {
128128 }
129129};
@@ -1183,7 +1183,7 @@ DOMXrayTraits::resolveNativeProperty(JSContext *cx, HandleObject wrapper,
11831183 HandleObject holder, HandleId id,
11841184 JSPropertyDescriptor *desc, unsigned flags)
11851185{
1186- JSObject * obj = getTargetObject (wrapper);
1186+ RootedObject obj (cx, getTargetObject (wrapper) );
11871187 if (!XrayResolveNativeProperty (cx, wrapper, obj, id, desc))
11881188 return false ;
11891189
@@ -1204,7 +1204,7 @@ DOMXrayTraits::resolveOwnProperty(JSContext *cx, Wrapper &jsWrapper, HandleObjec
12041204 if (!ok || desc->obj )
12051205 return ok;
12061206
1207- JSObject * obj = getTargetObject (wrapper);
1207+ RootedObject obj (cx, getTargetObject (wrapper) );
12081208 if (!XrayResolveOwnProperty (cx, wrapper, obj, id, desc, flags))
12091209 return false ;
12101210
@@ -1222,7 +1222,7 @@ DOMXrayTraits::defineProperty(JSContext *cx, HandleObject wrapper, HandleId id,
12221222 if (!existingDesc.obj ())
12231223 return true ;
12241224
1225- JSObject * obj = getTargetObject (wrapper);
1225+ RootedObject obj (cx, getTargetObject (wrapper) );
12261226 if (!js::IsProxy (obj))
12271227 return true ;
12281228
@@ -1694,7 +1694,7 @@ XrayWrapper<Base, Traits>::defineProperty(JSContext *cx, HandleObject wrapper,
16941694 if (!getOwnPropertyDescriptor (cx, wrapper, id, existing_desc.address (), JSRESOLVE_ASSIGNING ))
16951695 return false ;
16961696
1697- if (existing_desc.object () && ( existing_desc.get (). attrs & JSPROP_PERMANENT ))
1697+ if (existing_desc.object () && existing_desc.isPermanent ( ))
16981698 return true ; // silently ignore attempt to overwrite native property
16991699
17001700 bool defined = false ;
@@ -1907,7 +1907,7 @@ do_QueryInterfaceNative(JSContext* cx, HandleObject wrapper)
19071907{
19081908 nsISupports* nativeSupports;
19091909 if (IsWrapper (wrapper) && WrapperFactory::IsXrayWrapper (wrapper)) {
1910- JSObject* target = XrayTraits::getTargetObject (wrapper);
1910+ RootedObject target (cx, XrayTraits::getTargetObject (wrapper) );
19111911 if (GetXrayType (target) == XrayForDOMObject) {
19121912 if (!UnwrapDOMObjectToISupports (target, nativeSupports)) {
19131913 nativeSupports = nullptr ;
0 commit comments