diff --git a/src/core/lib/surface/call.c b/src/core/lib/surface/call.c index a8152964fc44e2836fbecfef13de456a04960cdc..3352e427cd266b7eb5a257c72ee8011b8bc42bce 100644 --- a/src/core/lib/surface/call.c +++ b/src/core/lib/surface/call.c @@ -897,7 +897,7 @@ static void recv_common_filter(grpc_exec_ctx *exec_ctx, grpc_call *call, error = grpc_error_set_str(error, GRPC_ERROR_STR_GRPC_MESSAGE, msg); gpr_free(msg); grpc_metadata_batch_remove(exec_ctx, b, b->idx.named.grpc_message); - } else { + } else if (error != GRPC_ERROR_NONE) { error = grpc_error_set_str(error, GRPC_ERROR_STR_GRPC_MESSAGE, ""); }