From e55b7df43e86e8874cdd22bc3ba8950a2a829bb3 Mon Sep 17 00:00:00 2001 From: Alexey Milovidov Date: Sun, 23 Jun 2024 19:32:45 +0200 Subject: [PATCH] Fix TSan report around condvar in host resolver --- .../source/auth/GeneralHTTPCredentialsProvider.cpp | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/aws-cpp-sdk-core/source/auth/GeneralHTTPCredentialsProvider.cpp b/src/aws-cpp-sdk-core/source/auth/GeneralHTTPCredentialsProvider.cpp index d809acdaff0..8e1a2814a99 100644 --- a/src/aws-cpp-sdk-core/source/auth/GeneralHTTPCredentialsProvider.cpp +++ b/src/aws-cpp-sdk-core/source/auth/GeneralHTTPCredentialsProvider.cpp @@ -122,7 +122,11 @@ bool GeneralHTTPCredentialsProvider::ShouldCreateGeneralHTTPProvider(const Aws:: shouldAllow = !addresses.empty(); hostResolved = true; } - hostResolverCV.notify_one(); + else + { + std::unique_lock lock(hostResolverMutex); + hostResolverCV.notify_one(); + } }; pHostResolver->ResolveHost(authority.c_str(), onHostResolved); std::unique_lock lock(hostResolverMutex); @@ -259,4 +263,4 @@ void GeneralHTTPCredentialsProvider::RefreshIfExpired() } Reload(); -} \ No newline at end of file +}