From aa3259c10ecd519f71ba65df91c976af4f735733 Mon Sep 17 00:00:00 2001 From: Alexander Polcyn Date: Wed, 17 Oct 2018 15:42:47 -0700 Subject: Fix corruption of blocking_resolve_address when ares is used and grpc is restarted --- .../filters/client_channel/resolver/dns/c_ares/dns_resolver_ares.cc | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/core/ext/filters/client_channel/resolver/dns/c_ares/dns_resolver_ares.cc b/src/core/ext/filters/client_channel/resolver/dns/c_ares/dns_resolver_ares.cc index dfa52867d8..c2a4d42203 100644 --- a/src/core/ext/filters/client_channel/resolver/dns/c_ares/dns_resolver_ares.cc +++ b/src/core/ext/filters/client_channel/resolver/dns/c_ares/dns_resolver_ares.cc @@ -473,7 +473,9 @@ void grpc_resolver_dns_ares_init() { GRPC_LOG_IF_ERROR("ares_library_init() failed", error); return; } - default_resolver = grpc_resolve_address_impl; + if (default_resolver == nullptr) { + default_resolver = grpc_resolve_address_impl; + } grpc_set_resolver_impl(&ares_resolver); grpc_core::ResolverRegistry::Builder::RegisterResolverFactory( grpc_core::UniquePtr( -- cgit v1.2.3