aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorGravatar murgatroid99 <mlumish@google.com>2017-04-11 11:39:32 -0700
committerGravatar murgatroid99 <mlumish@google.com>2017-04-11 11:39:32 -0700
commitc22d62f54e342b40d5352ed565c1629943a667db (patch)
treecd71cb66f47c4ef854ca6742cce18a82ff5dc1f9
parent42cfaa99bd3490bb0849fd66aa56016e763a56a8 (diff)
Move ForceShutdown completion handling to new OnComplete method
-rw-r--r--src/node/ext/server_uv.cc10
1 files changed, 2 insertions, 8 deletions
diff --git a/src/node/ext/server_uv.cc b/src/node/ext/server_uv.cc
index bf402e1961..6a31b89249 100644
--- a/src/node/ext/server_uv.cc
+++ b/src/node/ext/server_uv.cc
@@ -67,7 +67,7 @@ class ServerShutdownOp : public Op {
}
Local<Value> GetNodeValue() const {
- return Nan::New<External>(reinterpret_cast<void *>(server));
+ return Nan::Null();
}
bool ParseOp(Local<Value> value, grpc_op *out) {
@@ -77,6 +77,7 @@ class ServerShutdownOp : public Op {
return false;
}
void OnComplete() {
+ grpc_server_destroy(server);
}
grpc_server *server;
@@ -96,13 +97,6 @@ NAN_METHOD(ServerShutdownCallback) {
if (!info[0]->IsNull()) {
return Nan::ThrowError("forceShutdown failed somehow");
}
- MaybeLocal<Object> maybe_result = Nan::To<Object>(info[1]);
- Local<Object> result = maybe_result.ToLocalChecked();
- Local<Value> server_val = Nan::Get(
- result, Nan::New("shutdown").ToLocalChecked()).ToLocalChecked();
- Local<External> server_extern = server_val.As<External>();
- grpc_server *server = reinterpret_cast<grpc_server *>(server_extern->Value());
- grpc_server_destroy(server);
}
void Server::ShutdownServer() {