Merge pull request #16207 from markdroth/ping_api_fix

Fix undefined behavior introduced in #16167.
pull/16161/head^2
Mark D. Roth 7 years ago committed by GitHub
commit 3b60506f1a
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 7
      src/core/ext/filters/client_channel/client_channel.cc

@ -578,7 +578,12 @@ static void start_transport_op_locked(void* arg, grpc_error* error_ignored) {
} else {
grpc_error* error = GRPC_ERROR_NONE;
grpc_core::LoadBalancingPolicy::PickState pick_state;
memset(&pick_state, 0, sizeof(pick_state));
pick_state.initial_metadata = nullptr;
pick_state.initial_metadata_flags = 0;
pick_state.on_complete = nullptr;
memset(&pick_state.subchannel_call_context, 0,
sizeof(pick_state.subchannel_call_context));
pick_state.user_data = nullptr;
// Pick must return synchronously, because pick_state.on_complete is null.
GPR_ASSERT(chand->lb_policy->PickLocked(&pick_state, &error));
if (pick_state.connected_subchannel != nullptr) {

Loading…
Cancel
Save