From 4e4c6e7d1e36872e12771396d265adbfe2d68104 Mon Sep 17 00:00:00 2001 From: Robin Gareus Date: Mon, 22 Oct 2018 15:46:39 +0200 Subject: [PATCH] Fix an edge-case in Dummy backend's random generator INT_MAX == 2^31 is not a valid random seed for this LCG. --- libs/backends/dummy/dummy_audiobackend.cc | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/libs/backends/dummy/dummy_audiobackend.cc b/libs/backends/dummy/dummy_audiobackend.cc index 8f0daf6aec..e32eed8852 100644 --- a/libs/backends/dummy/dummy_audiobackend.cc +++ b/libs/backends/dummy/dummy_audiobackend.cc @@ -1664,13 +1664,13 @@ void DummyPort::setup_random_number_generator () #ifdef PLATFORM_WINDOWS LARGE_INTEGER Count; if (QueryPerformanceCounter (&Count)) { - _rseed = Count.QuadPart % UINT_MAX; + _rseed = Count.QuadPart; } else #endif { - _rseed = g_get_monotonic_time() % UINT_MAX; + _rseed = g_get_monotonic_time(); } - _rseed = (_rseed + (uint64_t)this) % UINT_MAX; + _rseed = (_rseed + (uint64_t)this) % INT_MAX; if (_rseed == 0) _rseed = 1; }