зеркало из https://github.com/mozilla/gecko-dev.git
Bug 558950 - Object.watch should always return undefined (r=Waldo)
This commit is contained in:
Родитель
98bb9e8f79
Коммит
98a8aede2d
|
@ -1518,10 +1518,11 @@ obj_watch(JSContext *cx, uintN argc, jsval *vp)
|
|||
obj = JS_THIS_OBJECT(cx, vp);
|
||||
if (!obj || !obj->checkAccess(cx, propid, JSACC_WATCH, &value, &attrs))
|
||||
return JS_FALSE;
|
||||
if (attrs & JSPROP_READONLY)
|
||||
return JS_TRUE;
|
||||
|
||||
*vp = JSVAL_VOID;
|
||||
|
||||
if (attrs & JSPROP_READONLY)
|
||||
return JS_TRUE;
|
||||
if (obj->isDenseArray() && !js_MakeArraySlow(cx, obj))
|
||||
return JS_FALSE;
|
||||
return JS_SetWatchPoint(cx, obj, userid, obj_watch_handler, callable);
|
||||
|
|
|
@ -0,0 +1,7 @@
|
|||
for (var i = 0; i < 5; ++i) {
|
||||
var o = {}
|
||||
Object.defineProperty(o, 'x', { value:"cow", writable:false });
|
||||
var r = o.watch('x', function() {});
|
||||
assertEq(r, undefined);
|
||||
o.x = 4;
|
||||
}
|
Загрузка…
Ссылка в новой задаче