Browse Source

Also initialize closures again

Yash Tibrewal 7 years ago
parent
commit
30e7b02b5c

+ 3 - 0
src/core/ext/filters/http/client/http_client_filter.cc

@@ -175,6 +175,9 @@ static void recv_trailing_metadata_ready(void* user_data, grpc_error* error) {
   if (calld->original_recv_initial_metadata_ready != nullptr) {
     calld->recv_trailing_metadata_err = GRPC_ERROR_REF(error);
     calld->seen_recv_trailing_metadata_ready = true;
+    GRPC_CLOSURE_INIT(&calld->recv_trailing_metadata_ready,
+                      recv_trailing_metadata_ready, elem,
+                      grpc_schedule_on_exec_ctx);
     GRPC_CALL_COMBINER_STOP(calld->call_combiner, "wait for initial metadata");
     return;
   }

+ 3 - 0
src/core/ext/filters/http/server/http_server_filter.cc

@@ -335,6 +335,9 @@ static void hs_recv_trailing_metadata_ready(void* user_data, grpc_error* err) {
   if (calld->original_recv_initial_metadata_ready) {
     calld->recv_trailing_metadata_ready_error = GRPC_ERROR_REF(err);
     calld->seen_recv_trailing_metadata_ready = true;
+    GRPC_CLOSURE_INIT(&calld->recv_trailing_metadata_ready,
+                      hs_recv_trailing_metadata_ready, elem,
+                      grpc_schedule_on_exec_ctx);
     GRPC_CALL_COMBINER_STOP(calld->call_combiner, "wait for initial metadata");
     return;
   }

+ 3 - 0
src/core/ext/filters/message_size/message_size_filter.cc

@@ -167,6 +167,9 @@ static void recv_trailing_metadata_ready(void* user_data, grpc_error* error) {
   if (calld->next_recv_message_ready) {
     calld->seen_recv_trailing_metadata = true;
     calld->recv_trailing_metadata_error = GRPC_ERROR_REF(error);
+    GRPC_CLOSURE_INIT(&calld->recv_trailing_metadata_ready,
+                      recv_trailing_metadata_ready, elem,
+                      grpc_schedule_on_exec_ctx);
     GRPC_CALL_COMBINER_STOP(calld->call_combiner, "wait for recv message");
     return;
   }

+ 3 - 0
src/core/lib/security/transport/server_auth_filter.cc

@@ -209,6 +209,9 @@ static void recv_trailing_metadata_ready(void* user_data, grpc_error* err) {
   if (calld->original_recv_initial_metadata_ready) {
     calld->recv_trailing_metadata_error = GRPC_ERROR_REF(err);
     calld->seen_recv_trailing_ready = true;
+    GRPC_CLOSURE_INIT(&calld->recv_trailing_metadata_ready,
+                      recv_trailing_metadata_ready, elem,
+                      grpc_schedule_on_exec_ctx);
     GRPC_CALL_COMBINER_STOP(calld->call_combiner, "wait for initial metadata");
   }
   err = grpc_error_add_child(GRPC_ERROR_REF(err), GRPC_ERROR_REF(calld->error));