From 8d8076040a57e0ccc24a6769032b134720d08365 Mon Sep 17 00:00:00 2001 From: Jonathan G Rennison Date: Sun, 18 Apr 2021 20:33:17 +0100 Subject: [PATCH] Avoid std::scoped_lock for MacOS 10.12 compatibility --- src/network/network_udp.cpp | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/network/network_udp.cpp b/src/network/network_udp.cpp index db4b3ce856..a6ef7282ee 100644 --- a/src/network/network_udp.cpp +++ b/src/network/network_udp.cpp @@ -730,7 +730,13 @@ void NetworkUDPInitialize() DEBUG(net, 1, "[udp] initializing listeners"); assert(_udp_client.socket == nullptr && _udp_server.socket == nullptr && _udp_master.socket == nullptr); - std::scoped_lock lock(_udp_client.mutex, _udp_server.mutex, _udp_master.mutex); + // std::scoped_lock lock(_udp_client.mutex, _udp_server.mutex, _udp_master.mutex); + + /* Avoid std::scoped_lock for MacOS 10.12 compatibility */ + std::unique_lock lock1(_udp_client.mutex, std::defer_lock); + std::unique_lock lock2(_udp_server.mutex, std::defer_lock); + std::unique_lock lock3(_udp_master.mutex, std::defer_lock); + std::lock(lock1, lock2, lock3); _udp_client.socket = new ClientNetworkUDPSocketHandler();