Add error details on context list clearing

pull/17536/head
Yash Tibrewal 6 years ago
parent afc2fabe0c
commit 906cf5b428
  1. 7
      src/core/ext/transport/chttp2/transport/chttp2_transport.cc

@ -170,9 +170,6 @@ grpc_chttp2_transport::~grpc_chttp2_transport() {
grpc_slice_buffer_destroy_internal(&outbuf);
grpc_chttp2_hpack_compressor_destroy(&hpack_compressor);
grpc_core::ContextList::Execute(cl, nullptr, GRPC_ERROR_NONE);
cl = nullptr;
grpc_slice_buffer_destroy_internal(&read_buffer);
grpc_chttp2_hpack_parser_destroy(&hpack_parser);
grpc_chttp2_goaway_parser_destroy(&goaway_parser);
@ -569,6 +566,10 @@ static void close_transport_locked(grpc_chttp2_transport* t,
grpc_error* error) {
end_all_the_calls(t, GRPC_ERROR_REF(error));
cancel_pings(t, GRPC_ERROR_REF(error));
// ContextList::Execute follows semantics of a callback function and does not
// need a ref on error
grpc_core::ContextList::Execute(cl, nullptr, error);
cl = nullptr;
if (t->closed_with_error == GRPC_ERROR_NONE) {
if (!grpc_error_has_clear_grpc_status(error)) {
error = grpc_error_set_int(error, GRPC_ERROR_INT_GRPC_STATUS,

Loading…
Cancel
Save