From ea231c7138d3dea8cd4cd75692137e078cbdd73d Mon Sep 17 00:00:00 2001 From: James Vecore Date: Mon, 12 Jul 2021 16:05:16 -0700 Subject: [PATCH] [Nearby] Acquire mutex in ClientProxy::GetLocalEndpointId This method is called from multiple threads and needs to ensure the local_endpoint_id_ data member can be read/updated safely from multiple threads. PiperOrigin-RevId: 384337724 --- cpp/core/internal/client_proxy.cc | 1 + 1 file changed, 1 insertion(+) diff --git a/cpp/core/internal/client_proxy.cc b/cpp/core/internal/client_proxy.cc index 6705c24c..4db73d2e 100644 --- a/cpp/core/internal/client_proxy.cc +++ b/cpp/core/internal/client_proxy.cc @@ -48,6 +48,7 @@ ClientProxy::~ClientProxy() { Reset(); } std::int64_t ClientProxy::GetClientId() const { return client_id_; } std::string ClientProxy::GetLocalEndpointId() { + MutexLock lock(&mutex_); if (local_endpoint_id_.empty()) { local_endpoint_id_ = GenerateLocalEndpointId(); NEARBY_LOGS(INFO) << "ClientProxy [Local Endpoint Generated]: client="