diff options
author | 2017-04-06 17:29:15 -0700 | |
---|---|---|
committer | 2017-04-06 17:29:15 -0700 | |
commit | bbf4e5b3267ba096a7de2aa6d9d6ed577f0ea5d0 (patch) | |
tree | 756f2e4bfcb0363aba93fd574770d0b34d925f28 /src/node/ext/call.h | |
parent | a0756882c8a2a1b9031dfc716bc3de799743b656 (diff) | |
parent | 2a4ea2daafaf9a79f749d1fef1a6a5970613b9fb (diff) |
Merge pull request #10468 from murgatroid99/node_call_destruction_bug
Fix call destruction bug
Diffstat (limited to 'src/node/ext/call.h')
-rw-r--r-- | src/node/ext/call.h | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/src/node/ext/call.h b/src/node/ext/call.h index fe2abab9ee..53a5e4ab67 100644 --- a/src/node/ext/call.h +++ b/src/node/ext/call.h @@ -78,6 +78,8 @@ class Call : public Nan::ObjectWrap { Call(const Call &); Call &operator=(const Call &); + void DestroyCall(); + static NAN_METHOD(New); static NAN_METHOD(StartBatch); static NAN_METHOD(Cancel); @@ -111,11 +113,14 @@ class Op { typedef std::vector<unique_ptr<Op>> OpVec; struct tag { - tag(Nan::Callback *callback, OpVec *ops, Call *call); + tag(Nan::Callback *callback, OpVec *ops, Call *call, + v8::Local<v8::Value> call_value); ~tag(); Nan::Callback *callback; OpVec *ops; Call *call; + Nan::Persistent<v8::Value, Nan::CopyablePersistentTraits<v8::Value>> + call_persist; }; v8::Local<v8::Value> GetTagNodeValue(void *tag); |