malloc to stack

reviewable/pr14615/r23
David Garcia Quintas 7 years ago
parent d5d36d7b7b
commit 46511cd5d3
  1. 13
      src/core/ext/transport/chttp2/client/insecure/channel_create.cc

@ -41,16 +41,13 @@ static void client_channel_factory_unref(
static grpc_subchannel* client_channel_factory_create_subchannel( static grpc_subchannel* client_channel_factory_create_subchannel(
grpc_client_channel_factory* cc_factory, const grpc_subchannel_args* args) { grpc_client_channel_factory* cc_factory, const grpc_subchannel_args* args) {
grpc_subchannel_args* final_sc_args = grpc_subchannel_args final_sc_args;
static_cast<grpc_subchannel_args*>(gpr_malloc(sizeof(*final_sc_args))); memcpy(&final_sc_args, args, sizeof(*args));
memcpy(final_sc_args, args, sizeof(*args)); final_sc_args.args = grpc_default_authority_add_if_not_present(args->args);
final_sc_args->args = grpc_default_authority_add_if_not_present(args->args);
grpc_connector* connector = grpc_chttp2_connector_create(); grpc_connector* connector = grpc_chttp2_connector_create();
grpc_subchannel* s = grpc_subchannel_create(connector, final_sc_args); grpc_subchannel* s = grpc_subchannel_create(connector, &final_sc_args);
grpc_connector_unref(connector); grpc_connector_unref(connector);
grpc_channel_args_destroy( grpc_channel_args_destroy(const_cast<grpc_channel_args*>(final_sc_args.args));
const_cast<grpc_channel_args*>(final_sc_args->args));
gpr_free(final_sc_args);
return s; return s;
} }

Loading…
Cancel
Save