diff options
author | 2018-10-29 14:46:51 -0700 | |
---|---|---|
committer | 2018-10-29 14:46:51 -0700 | |
commit | 156d381db4fa375cf8dd6a4c558cfa8e60e53c83 (patch) | |
tree | 7aa8afe4add03a4258067ee94f595bc77e23e7f5 /src/core/ext/transport/chttp2/server | |
parent | 679abd779ae3c06361e868b45c970258f4353fab (diff) | |
parent | ccfd919190babf042c2876e6b94fa38a2508b424 (diff) |
Merge branch 'master' of https://github.com/grpc/grpc into channelz-listen-sockets
Diffstat (limited to 'src/core/ext/transport/chttp2/server')
-rw-r--r-- | src/core/ext/transport/chttp2/server/chttp2_server.cc | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/src/core/ext/transport/chttp2/server/chttp2_server.cc b/src/core/ext/transport/chttp2/server/chttp2_server.cc index 0b0adb9786..0f601c4178 100644 --- a/src/core/ext/transport/chttp2/server/chttp2_server.cc +++ b/src/core/ext/transport/chttp2/server/chttp2_server.cc @@ -143,7 +143,6 @@ static void on_handshake_done(void* arg, grpc_error* error) { // If the handshaking succeeded but there is no endpoint, then the // handshaker may have handed off the connection to some external // code, so we can just clean up here without creating a transport. - // TODO(juanlishen): Do we need to free the memory to resource user? if (args->endpoint != nullptr) { grpc_transport* transport = grpc_create_chttp2_transport( args->args, args->endpoint, false, resource_user); @@ -169,6 +168,11 @@ static void on_handshake_done(void* arg, grpc_error* error) { connection_state, grpc_schedule_on_exec_ctx); grpc_timer_init(&connection_state->timer, connection_state->deadline, &connection_state->on_timeout); + } else { + if (resource_user != nullptr) { + grpc_resource_user_free(resource_user, + GRPC_RESOURCE_QUOTA_CHANNEL_SIZE); + } } } grpc_handshake_manager_pending_list_remove( |