diff options
author | murgatroid99 <mlumish@google.com> | 2017-04-11 12:13:08 -0700 |
---|---|---|
committer | murgatroid99 <mlumish@google.com> | 2017-04-11 12:13:08 -0700 |
commit | 803392e9f14baeedfe37308cf0ff47978bf3f5e6 (patch) | |
tree | 7c0b44ff6d89cdde84dc970c2be5dcb878806963 | |
parent | c22d62f54e342b40d5352ed565c1629943a667db (diff) |
Node server: add NULL check to tryShutdown
-rw-r--r-- | src/node/ext/server.cc | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/node/ext/server.cc b/src/node/ext/server.cc index 22c89c5862..2d017dd048 100644 --- a/src/node/ext/server.cc +++ b/src/node/ext/server.cc @@ -277,6 +277,12 @@ NAN_METHOD(Server::TryShutdown) { return Nan::ThrowTypeError("tryShutdown can only be called on a Server"); } Server *server = ObjectWrap::Unwrap<Server>(info.This()); + if (server->wrapped_server == NULL) { + // Server is already shut down. Call callback immediately. + Nan::Callback callback(info[0].As<Function>()); + callback.Call(0, {}); + return; + } TryShutdownOp *op = new TryShutdownOp(server, info.This()); unique_ptr<OpVec> ops(new OpVec()); ops->push_back(unique_ptr<Op>(op)); |