diff options
author | Daniel Bevenius <daniel.bevenius@gmail.com> | 2018-03-06 11:53:15 +0100 |
---|---|---|
committer | Daniel Bevenius <daniel.bevenius@gmail.com> | 2018-03-08 05:40:40 +0100 |
commit | 1e3dd8bf5589394827a57aaa91854add7e43958d (patch) | |
tree | 1514a67fb4d4ed306ce6dc13cb43cb6b6a9b932e /src/async_wrap.cc | |
parent | ebfed17fecaa2e7bbf0740ab7411cbf116e3d042 (diff) | |
download | android-node-v8-1e3dd8bf5589394827a57aaa91854add7e43958d.tar.gz android-node-v8-1e3dd8bf5589394827a57aaa91854add7e43958d.tar.bz2 android-node-v8-1e3dd8bf5589394827a57aaa91854add7e43958d.zip |
src: use smart pointer in AsyncWrap::WeakCallback
PR-URL: https://github.com/nodejs/node/pull/19168
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com>
Diffstat (limited to 'src/async_wrap.cc')
-rw-r--r-- | src/async_wrap.cc | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/async_wrap.cc b/src/async_wrap.cc index 08bb73f746..e2656e4eec 100644 --- a/src/async_wrap.cc +++ b/src/async_wrap.cc @@ -415,14 +415,14 @@ void AsyncWrap::WeakCallback(const v8::WeakCallbackInfo<DestroyParam>& info) { HandleScope scope(info.GetIsolate()); Environment* env = Environment::GetCurrent(info.GetIsolate()); - DestroyParam* p = info.GetParameter(); + std::unique_ptr<DestroyParam> p{info.GetParameter()}; Local<Object> prop_bag = PersistentToLocal(info.GetIsolate(), p->propBag); Local<Value> val = prop_bag->Get(env->destroyed_string()); if (val->IsFalse()) { AsyncWrap::EmitDestroy(env, p->asyncId); } - delete p; + // unique_ptr goes out of scope here and pointer is deleted. } |