From 891343aab93cfe99516d9b50f6f45236f1519f4b Mon Sep 17 00:00:00 2001 From: "Scott E. Graves" Date: Fri, 23 Aug 2024 19:46:11 -0500 Subject: [PATCH] fix --- repertory/librepertory/src/platform/unix_platform.cpp | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/repertory/librepertory/src/platform/unix_platform.cpp b/repertory/librepertory/src/platform/unix_platform.cpp index e60265b9..1bd07b48 100644 --- a/repertory/librepertory/src/platform/unix_platform.cpp +++ b/repertory/librepertory/src/platform/unix_platform.cpp @@ -184,8 +184,11 @@ auto lock_data::wait_for_lock(int fd, std::uint8_t retry_count) -> int { if (lock_status == -1) { lock_status = errno; if (lock_status == EWOULDBLOCK) { - auto sleep_ms = - utils::generate_random_between(1U, std::min(remain, max_sleep)); + auto sleep_ms = std::min(remain, max_sleep); + if (sleep_ms > 1U) { + sleep_ms = utils::generate_random_between(1U, sleep_ms); + } + std::this_thread::sleep_for(std::chrono::milliseconds(sleep_ms)); remain -= sleep_ms; }