diff options
author | 2018-06-22 13:00:07 -0700 | |
---|---|---|
committer | 2018-06-22 13:00:07 -0700 | |
commit | 96c0a266a0a5f83a2bdd9678dbd05620f6380a91 (patch) | |
tree | f905977e2bcc97476b669c258bc0f17079956bb5 /src/core/ext/filters/http | |
parent | dd0995d0159169d23f92eaf1df228033c337866c (diff) |
Changes
Diffstat (limited to 'src/core/ext/filters/http')
-rw-r--r-- | src/core/ext/filters/http/client/http_client_filter.cc | 2 | ||||
-rw-r--r-- | src/core/ext/filters/http/server/http_server_filter.cc | 9 |
2 files changed, 6 insertions, 5 deletions
diff --git a/src/core/ext/filters/http/client/http_client_filter.cc b/src/core/ext/filters/http/client/http_client_filter.cc index eadb9db1be..04ac4ac947 100644 --- a/src/core/ext/filters/http/client/http_client_filter.cc +++ b/src/core/ext/filters/http/client/http_client_filter.cc @@ -167,7 +167,7 @@ static void recv_trailing_metadata_ready(void* user_data, grpc_error* error) { if (calld->recv_initial_metadata_error != GRPC_ERROR_NONE) { if (error == GRPC_ERROR_NONE) { error = GRPC_ERROR_REF(calld->recv_initial_metadata_error); - } else { + } else if (error != calld->recv_initial_metadata_error) { error = grpc_error_add_child(error, calld->recv_initial_metadata_error); } } diff --git a/src/core/ext/filters/http/server/http_server_filter.cc b/src/core/ext/filters/http/server/http_server_filter.cc index 48eeb9212c..01e5aa445e 100644 --- a/src/core/ext/filters/http/server/http_server_filter.cc +++ b/src/core/ext/filters/http/server/http_server_filter.cc @@ -324,14 +324,15 @@ static void hs_recv_trailing_metadata_ready(void* user_data, grpc_error* err) { if (calld->recv_initial_metadata_ready_error != GRPC_ERROR_NONE) { if (err == GRPC_ERROR_NONE) { err = GRPC_ERROR_REF(calld->recv_initial_metadata_ready_error); - } else { + } else if (err != calld->recv_initial_metadata_ready_error) { err = grpc_error_add_child(err, calld->recv_initial_metadata_ready_error); + } else { + err = GRPC_ERROR_REF(err); } - GRPC_CLOSURE_RUN(calld->original_recv_trailing_metadata_ready, err); } else { - GRPC_CLOSURE_RUN(calld->original_recv_trailing_metadata_ready, - GRPC_ERROR_REF(err)); + err = GRPC_ERROR_REF(err); } + GRPC_CLOSURE_RUN(calld->original_recv_trailing_metadata_ready, err); } static grpc_error* hs_mutate_op(grpc_call_element* elem, |