diff options
author | Oswald Buddenhagen <oswald.buddenhagen@qt.io> | 2017-05-30 12:48:17 +0200 |
---|---|---|
committer | Oswald Buddenhagen <oswald.buddenhagen@qt.io> | 2017-05-30 12:48:17 +0200 |
commit | 881da28418d380042aa95a97f0cbd42560a64f7c (patch) | |
tree | a794dff3274695e99c651902dde93d934ea7a5af /Source/JavaScriptCore/API/JSWeakObjectMapRefPrivate.cpp | |
parent | 7e104c57a70fdf551bb3d22a5d637cdcbc69dbea (diff) | |
parent | 0fcedcd17cc00d3dd44c718b3cb36c1033319671 (diff) | |
download | qtwebkit-881da28418d380042aa95a97f0cbd42560a64f7c.tar.gz |
Merge 'wip/next' into dev
Change-Id: Iff9ee5e23bb326c4371ec8ed81d56f2f05d680e9
Diffstat (limited to 'Source/JavaScriptCore/API/JSWeakObjectMapRefPrivate.cpp')
-rw-r--r-- | Source/JavaScriptCore/API/JSWeakObjectMapRefPrivate.cpp | 18 |
1 files changed, 10 insertions, 8 deletions
diff --git a/Source/JavaScriptCore/API/JSWeakObjectMapRefPrivate.cpp b/Source/JavaScriptCore/API/JSWeakObjectMapRefPrivate.cpp index 8cbe263a7..925c00f0b 100644 --- a/Source/JavaScriptCore/API/JSWeakObjectMapRefPrivate.cpp +++ b/Source/JavaScriptCore/API/JSWeakObjectMapRefPrivate.cpp @@ -27,12 +27,12 @@ #include "JSWeakObjectMapRefPrivate.h" #include "APICast.h" -#include "APIShims.h" #include "JSCJSValue.h" #include "JSCallbackObject.h" #include "JSWeakObjectMapRefInternal.h" -#include "Operations.h" +#include "JSCInlines.h" #include "Weak.h" +#include "WeakGCMapInlines.h" #include <wtf/HashMap.h> #include <wtf/text/StringHash.h> @@ -46,8 +46,8 @@ extern "C" { JSWeakObjectMapRef JSWeakObjectMapCreate(JSContextRef context, void* privateData, JSWeakMapDestroyedCallback callback) { ExecState* exec = toJS(context); - APIEntryShim entryShim(exec); - RefPtr<OpaqueJSWeakObjectMap> map = OpaqueJSWeakObjectMap::create(privateData, callback); + JSLockHolder locker(exec); + RefPtr<OpaqueJSWeakObjectMap> map = OpaqueJSWeakObjectMap::create(exec->vm(), privateData, callback); exec->lexicalGlobalObject()->registerWeakMap(map.get()); return map.get(); } @@ -59,11 +59,13 @@ void JSWeakObjectMapSet(JSContextRef ctx, JSWeakObjectMapRef map, void* key, JSO return; } ExecState* exec = toJS(ctx); - APIEntryShim entryShim(exec); + JSLockHolder locker(exec); JSObject* obj = toJS(object); if (!obj) return; - ASSERT(obj->inherits(&JSCallbackObject<JSGlobalObject>::s_info) || obj->inherits(&JSCallbackObject<JSDestructibleObject>::s_info)); + ASSERT(obj->inherits(JSProxy::info()) + || obj->inherits(JSCallbackObject<JSGlobalObject>::info()) + || obj->inherits(JSCallbackObject<JSDestructibleObject>::info())); map->map().set(key, obj); } @@ -74,7 +76,7 @@ JSObjectRef JSWeakObjectMapGet(JSContextRef ctx, JSWeakObjectMapRef map, void* k return 0; } ExecState* exec = toJS(ctx); - APIEntryShim entryShim(exec); + JSLockHolder locker(exec); return toRef(jsCast<JSObject*>(map->map().get(key))); } @@ -85,7 +87,7 @@ void JSWeakObjectMapRemove(JSContextRef ctx, JSWeakObjectMapRef map, void* key) return; } ExecState* exec = toJS(ctx); - APIEntryShim entryShim(exec); + JSLockHolder locker(exec); map->map().remove(key); } |