diff options
Diffstat (limited to 'test/gc/node_modules/weak/src/weakref.cc')
-rw-r--r-- | test/gc/node_modules/weak/src/weakref.cc | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/test/gc/node_modules/weak/src/weakref.cc b/test/gc/node_modules/weak/src/weakref.cc index c2267a070..690614286 100644 --- a/test/gc/node_modules/weak/src/weakref.cc +++ b/test/gc/node_modules/weak/src/weakref.cc @@ -134,8 +134,8 @@ void AddCallback(Handle<Object> proxy, Handle<Function> callback) { } -void TargetCallback(Persistent<Value> target, void* arg) { - HandleScope scope; +void TargetCallback(Isolate* isolate, Persistent<Value> target, void* arg) { + HandleScope scope(isolate); assert(target.IsNearDeath()); @@ -187,7 +187,9 @@ Handle<Value> Create(const Arguments& args) { cont->proxy = Persistent<Object>::New(proxyClass->NewInstance()); cont->proxy->SetAlignedPointerInInternalField(0, cont); - cont->target.MakeWeak(cont, TargetCallback); + cont->target.MakeWeak(Isolate::GetCurrent(), + static_cast<void*>(cont), + TargetCallback); if (args.Length() >= 2) { AddCallback(cont->proxy, Handle<Function>::Cast(args[1])); |