diff --git a/src/core/ext/filters/client_channel/subchannel.cc b/src/core/ext/filters/client_channel/subchannel.cc index c3521f46cee..5e6cbccd93f 100644 --- a/src/core/ext/filters/client_channel/subchannel.cc +++ b/src/core/ext/filters/client_channel/subchannel.cc @@ -140,8 +140,9 @@ RefCountedPtr SubchannelCall::Create(Args args, const size_t allocation_size = args.connected_subchannel->GetInitialCallSizeEstimate( args.parent_data_size); - return RefCountedPtr(new (args.arena->Alloc( - allocation_size)) SubchannelCall(std::move(args), error)); + Arena* arena = args.arena; + return RefCountedPtr(new ( + arena->Alloc(allocation_size)) SubchannelCall(std::move(args), error)); } SubchannelCall::SubchannelCall(Args args, grpc_error** error)