aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/core
diff options
context:
space:
mode:
authorGravatar ncteisen <ncteisen@gmail.com>2018-12-07 12:09:32 -0800
committerGravatar ncteisen <ncteisen@gmail.com>2018-12-07 12:09:32 -0800
commitb5f4b4f1303578415bb7d87c6c6c26918fcf3a59 (patch)
tree058b1aa9c2b7dc45bc209c0dd9b759ce21da51d4 /src/core
parent12192bed323cacc5e59a5fca89da2a1ec66816a5 (diff)
Move the unref
Diffstat (limited to 'src/core')
-rw-r--r--src/core/lib/surface/server.cc2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/core/lib/surface/server.cc b/src/core/lib/surface/server.cc
index 44e938ad77..5f7f630d16 100644
--- a/src/core/lib/surface/server.cc
+++ b/src/core/lib/surface/server.cc
@@ -462,7 +462,6 @@ static void finish_destroy_channel(void* cd, grpc_error* error) {
channel_data* chand = static_cast<channel_data*>(cd);
grpc_server* server = chand->server;
GRPC_CHANNEL_INTERNAL_UNREF(chand->channel, "server");
- chand->socket_node.reset();
server_unref(server);
}
@@ -951,6 +950,7 @@ static grpc_error* init_channel_elem(grpc_channel_element* elem,
static void destroy_channel_elem(grpc_channel_element* elem) {
size_t i;
channel_data* chand = static_cast<channel_data*>(elem->channel_data);
+ chand->socket_node.reset();
if (chand->registered_methods) {
for (i = 0; i < chand->registered_method_slots; i++) {
grpc_slice_unref_internal(chand->registered_methods[i].method);