import changes from `dev' branch of rmottola/Arctic-Fox:

- Ensure input events account for APZ transforms on Windows. (bug 1143567 part 4, r=jmathies) (e9df7b3cb)
- Fix mouse event handling regression from bug 1143567. (bug 1142866, r=jmathies) (91b195614)
- Fix regression from bug 1143567 that broke context menus. (bug 1144827, r=jmathies, a=kwierso) (c852a6554)
- fix typo in applying bug 1143567 part 3 (b246c45a8)
- fix typo in applying bug 1143567 part 3 (6f1e6084f)
- Bug 1130089 - Use constexpr for JitStackValueAlignment. r=bbouvier (59793733b)
- pointer style (b3a4de187)
- Bug 1121613 - Move MacroAssemblerSpecific::Push to the generic MacroAssembler. r=jandem (54d0c7e82)
- Bug 1151382 - Fix Alignment mismatch for none jit. r=luke (05cce8627)
- fix typo (66dd065dd)
- pointer style (2fe56af71)
- remove MOZ_HAVE_CXX11_OVERRIDE and MOZ_HAVE_CXX11_FINAL - may break some older compilers, let's hope not anything currently used (a883df8d7)
- Bug 1135428 - OdinMonkey: remove compileAndGo restriction (r=bbouvier) Bug 1135428 - OdinMonkey: return nullptr, not false (r=warnings-as-errors CLOSED TREE) (378f1047e)
- Bug 1135428: Fix test to run with --no-asmjs as well (76b45cc55)
- pointer style (e85078674)
- Bug 1142784, part 1 - In NativeObject.cpp, move some Lookup functions out of the way and make a big swath of this file the [[DefineOwnProperty]] section. r=Waldo. (5452ceb3a)
- Bug 1142784, part 2 - Change ProxyHandler::defineProperty() to make the desc argument a non-mutable handle. r=Waldo. (26afaeb1e)
- Bug 1142784, part 3 - Change js::DefinePropertyOp and a few property-defining functions to use PropertyDescriptor rather than separate (value, attrs, getter, setter) arguments. r=Waldo. (0cf9f0f6d)
- more pointer style.... soon to be changed again, boring (88956061f)
- Bug 1146165 - Stop calling Proxy::set directly from Ion IC stub. EmitObjectOpResultCheck is retained because GenerateCallSetter still uses it in the JSSetterOp case. r=efaust. (28d368865)
- Bug 1138157 - Change ScriptedDirectProxyHandler to inherit from BaseProxyHandler. r=efaust (1ecb895cc)
- missing bit of Bug 1113369, part 4 - [[Set]] ObjectOpResult support. (ac03ea66d)
- pointer style (b966f0173)
- pointer style (883527058)
This commit is contained in:
2020-05-30 07:43:04 +08:00
parent f3297ff565
commit a013252167
107 changed files with 1619 additions and 1340 deletions
+18 -11
View File
@@ -690,7 +690,7 @@ js::StandardDefineProperty(JSContext *cx, HandleObject obj, HandleId id,
if (obj->is<ProxyObject>()) {
Rooted<PropertyDescriptor> pd(cx, desc);
pd.object().set(obj);
return Proxy::defineProperty(cx, obj, id, &pd, result);
return Proxy::defineProperty(cx, obj, id, pd, result);
}
return result.fail(JSMSG_OBJECT_NOT_EXTENSIBLE);
}
@@ -1577,11 +1577,11 @@ js::CreateThisForFunction(JSContext* cx, HandleObject callee, NewObjectKind newK
}
/* static */ bool
JSObject::nonNativeSetProperty(JSContext* cx, HandleObject obj, HandleObject receiver,
JSObject::nonNativeSetProperty(JSContext *cx, HandleObject obj, HandleObject receiver,
HandleId id, MutableHandleValue vp, ObjectOpResult &result)
{
if (MOZ_UNLIKELY(obj->watched())) {
WatchpointMap* wpmap = cx->compartment()->watchpointMap;
WatchpointMap *wpmap = cx->compartment()->watchpointMap;
if (wpmap && !wpmap->triggerWatchpoint(cx, obj, id, vp))
return false;
}
@@ -1589,7 +1589,7 @@ JSObject::nonNativeSetProperty(JSContext* cx, HandleObject obj, HandleObject rec
}
/* static */ bool
JSObject::nonNativeSetElement(JSContext* cx, HandleObject obj, HandleObject receiver,
JSObject::nonNativeSetElement(JSContext *cx, HandleObject obj, HandleObject receiver,
uint32_t index, MutableHandleValue vp, ObjectOpResult &result)
{
RootedId id(cx);
@@ -3175,23 +3175,30 @@ js::GetOwnPropertyDescriptor(JSContext* cx, HandleObject obj, HandleId id,
return true;
}
bool
js::DefineProperty(JSContext *cx, HandleObject obj, HandleId id, Handle<PropertyDescriptor> desc,
ObjectOpResult &result)
{
if (DefinePropertyOp op = obj->getOps()->defineProperty)
return op(cx, obj, id, desc, result);
return NativeDefineProperty(cx, obj.as<NativeObject>(), id, desc, result);
}
bool
js::DefineProperty(ExclusiveContext *cx, HandleObject obj, HandleId id, HandleValue value,
JSGetterOp getter, JSSetterOp setter, unsigned attrs,
ObjectOpResult &result)
{
MOZ_ASSERT(getter != JS_PropertyStub);
MOZ_ASSERT(setter != JS_StrictPropertyStub);
MOZ_ASSERT(!(attrs & JSPROP_PROPOP_ACCESSORS));
DefinePropertyOp op = obj->getOps()->defineProperty;
if (op) {
Rooted<PropertyDescriptor> desc(cx);
desc.initFields(obj, value, attrs, getter, setter);
if (DefinePropertyOp op = obj->getOps()->defineProperty) {
if (!cx->shouldBeJSContext())
return false;
return op(cx->asJSContext(), obj, id, value, getter, setter, attrs, result);
return op(cx->asJSContext(), obj, id, desc, result);
}
return NativeDefineProperty(cx, obj.as<NativeObject>(), id, value, getter, setter, attrs,
result);
return NativeDefineProperty(cx, obj.as<NativeObject>(), id, desc, result);
}
bool