diff options
Diffstat (limited to 'src/core')
-rw-r--r-- | src/core/lib/surface/server.cc | 2 |
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); |