Skip to content

Commit

Permalink
weakref: save the weakref proxy instance as a Local ref
Browse files Browse the repository at this point in the history
  • Loading branch information
TooTallNate committed Nov 17, 2013
1 parent 7784f3f commit 75df705
Showing 1 changed file with 3 additions and 2 deletions.
5 changes: 3 additions & 2 deletions src/weakref.cc
Expand Up @@ -166,15 +166,16 @@ NAN_METHOD(Create) {
proxy_container *cont = (proxy_container *) proxy_container *cont = (proxy_container *)
malloc(sizeof(proxy_container)); malloc(sizeof(proxy_container));


NanAssignPersistent(Object, cont->proxy, NanPersistentToLocal(proxyClass)->NewInstance()); Local<Object> proxy = NanPersistentToLocal(proxyClass)->NewInstance();
NanAssignPersistent(Object, cont->proxy, proxy);
NanAssignPersistent(Object, cont->target, args[0]->ToObject()); NanAssignPersistent(Object, cont->target, args[0]->ToObject());
NanAssignPersistent(Object, cont->emitter, args[1]->ToObject()); NanAssignPersistent(Object, cont->emitter, args[1]->ToObject());


NanSetInternalFieldPointer(NanPersistentToLocal(cont->proxy), 0, cont); NanSetInternalFieldPointer(NanPersistentToLocal(cont->proxy), 0, cont);


NanMakeWeak(cont->target, reinterpret_cast<void *>(cont), TargetCallback); NanMakeWeak(cont->target, reinterpret_cast<void *>(cont), TargetCallback);


NanReturnValue(NanPersistentToLocal(cont->proxy)); NanReturnValue(proxy);
} }


/** /**
Expand Down

0 comments on commit 75df705

Please sign in to comment.