From b5f4b4f1303578415bb7d87c6c6c26918fcf3a59 Mon Sep 17 00:00:00 2001 From: ncteisen Date: Fri, 7 Dec 2018 12:09:32 -0800 Subject: Move the unref --- src/core/lib/surface/server.cc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'src/core/lib') 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(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(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); -- cgit v1.2.3