aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/core/lib/iomgr/tcp_client_posix.cc
diff options
context:
space:
mode:
Diffstat (limited to 'src/core/lib/iomgr/tcp_client_posix.cc')
-rw-r--r--src/core/lib/iomgr/tcp_client_posix.cc15
1 files changed, 6 insertions, 9 deletions
diff --git a/src/core/lib/iomgr/tcp_client_posix.cc b/src/core/lib/iomgr/tcp_client_posix.cc
index 7c4a437dbf..30015fc203 100644
--- a/src/core/lib/iomgr/tcp_client_posix.cc
+++ b/src/core/lib/iomgr/tcp_client_posix.cc
@@ -66,6 +66,7 @@ typedef struct {
static grpc_error* prepare_socket(const grpc_resolved_address* addr, int fd,
const grpc_channel_args* channel_args) {
grpc_error* err = GRPC_ERROR_NONE;
+ grpc_socket_mutator* mutator = nullptr;
GPR_ASSERT(fd >= 0);
@@ -79,15 +80,11 @@ static grpc_error* prepare_socket(const grpc_resolved_address* addr, int fd,
}
err = grpc_set_socket_no_sigpipe_if_possible(fd);
if (err != GRPC_ERROR_NONE) goto error;
- if (channel_args) {
- const grpc_arg* arg =
- grpc_channel_args_find(channel_args, GRPC_ARG_SOCKET_MUTATOR);
- grpc_socket_mutator* mutator =
- grpc_channel_arg_get_pointer<grpc_socket_mutator>(arg);
- if (mutator) {
- err = grpc_set_socket_with_mutator(fd, mutator);
- if (err != GRPC_ERROR_NONE) goto error;
- }
+ mutator = grpc_channel_args_get_pointer<grpc_socket_mutator>(
+ channel_args, GRPC_ARG_SOCKET_MUTATOR);
+ if (mutator != nullptr) {
+ err = grpc_set_socket_with_mutator(fd, mutator);
+ if (err != GRPC_ERROR_NONE) goto error;
}
goto done;