diff --git a/test/core/end2end/tests/buffer_pool_server.c b/test/core/end2end/tests/buffer_pool_server.c index 40117c99b16e74da33cac39446926898fd4be993..923ebb94fc7e22921414272a9dd27297b577ee6e 100644 --- a/test/core/end2end/tests/buffer_pool_server.c +++ b/test/core/end2end/tests/buffer_pool_server.c @@ -257,6 +257,7 @@ void buffer_pool_server(grpc_end2end_test_config config) { grpc_metadata_array_destroy(&initial_metadata_recv[call_id]); grpc_metadata_array_destroy(&trailing_metadata_recv[call_id]); grpc_call_destroy(client_calls[call_id]); + gpr_free(details[call_id]); pending_client_calls--; } else if (ev_tag < SERVER_RECV_BASE_TAG) { @@ -287,6 +288,7 @@ void buffer_pool_server(grpc_end2end_test_config config) { pending_server_recv_calls++; grpc_call_details_destroy(&call_details[call_id]); + grpc_metadata_array_destroy(&request_metadata_recv[call_id]); } else if (ev_tag < SERVER_END_BASE_TAG) { /* finished read on the server */ int call_id = ev_tag - SERVER_RECV_BASE_TAG; @@ -346,6 +348,10 @@ void buffer_pool_server(grpc_end2end_test_config config) { GPR_ASSERT(cancelled_calls_on_client == cancelled_calls_on_server); + grpc_byte_buffer_destroy(request_payload); + gpr_slice_unref(request_payload_slice); + grpc_buffer_pool_unref(buffer_pool); + end_test(&f); config.tear_down_data(&f); }