diff options
Diffstat (limited to 'js/src/vm/Watchtower.cpp')
-rw-r--r-- | js/src/vm/Watchtower.cpp | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/js/src/vm/Watchtower.cpp b/js/src/vm/Watchtower.cpp index 80023d7e81..86c748285d 100644 --- a/js/src/vm/Watchtower.cpp +++ b/js/src/vm/Watchtower.cpp @@ -102,23 +102,24 @@ static void InvalidateMegamorphicCache(JSContext* cx, } void MaybePopReturnFuses(JSContext* cx, Handle<NativeObject*> nobj) { - JSObject* objectProto = &cx->global()->getObjectPrototype(); + GlobalObject* global = &nobj->global(); + JSObject* objectProto = &global->getObjectPrototype(); if (nobj == objectProto) { nobj->realm()->realmFuses.objectPrototypeHasNoReturnProperty.popFuse( cx, nobj->realm()->realmFuses); return; } - JSObject* iteratorProto = cx->global()->maybeGetIteratorPrototype(); + JSObject* iteratorProto = global->maybeGetIteratorPrototype(); if (nobj == iteratorProto) { nobj->realm()->realmFuses.iteratorPrototypeHasNoReturnProperty.popFuse( cx, nobj->realm()->realmFuses); return; } - JSObject* arrayIterProto = cx->global()->maybeGetArrayIteratorPrototype(); + JSObject* arrayIterProto = global->maybeGetArrayIteratorPrototype(); if (nobj == arrayIterProto) { - cx->realm()->realmFuses.arrayIteratorPrototypeHasNoReturnProperty.popFuse( + nobj->realm()->realmFuses.arrayIteratorPrototypeHasNoReturnProperty.popFuse( cx, nobj->realm()->realmFuses); return; } @@ -208,12 +209,12 @@ static bool WatchProtoChangeImpl(JSContext* cx, HandleObject obj) { InvalidateMegamorphicCache(cx, obj.as<NativeObject>()); NativeObject* nobj = &obj->as<NativeObject>(); - if (nobj == cx->global()->maybeGetArrayIteratorPrototype()) { + if (nobj == nobj->global().maybeGetArrayIteratorPrototype()) { nobj->realm()->realmFuses.arrayIteratorPrototypeHasIteratorProto.popFuse( cx, nobj->realm()->realmFuses); } - if (nobj == cx->global()->maybeGetIteratorPrototype()) { + if (nobj == nobj->global().maybeGetIteratorPrototype()) { nobj->realm()->realmFuses.iteratorPrototypeHasObjectProto.popFuse( cx, nobj->realm()->realmFuses); } |