avutil/random_seed: Reduce the time needed on systems with very low precission clock()
authorMichael Niedermayer <michael@niedermayer.cc>
Sat, 24 Dec 2016 13:26:41 +0000 (14:26 +0100)
committerMichael Niedermayer <michael@niedermayer.cc>
Wed, 8 Feb 2017 20:17:50 +0000 (21:17 +0100)
This should fix issues on BSD
CLOCKS_PER_SEC is 128 on BSD while SUSv2 requires it to be a million

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
(cherry picked from commit c4152fc42e480c41efb7f761b1bbe5f0bc43d5bc)
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
libavutil/random_seed.c

index bbc4596..67000e4 100644 (file)
@@ -87,7 +87,7 @@ static uint32_t get_generic_seed(void)
 
     for (;;) {
         clock_t t = clock();
-        if (last_t + 2*last_td + 1 >= t) {
+        if (last_t + 2*last_td + (CLOCKS_PER_SEC > 1000) >= t) {
             last_td = t - last_t;
             buffer[i & 511] = 1664525*buffer[i & 511] + 1013904223 + (last_td % 3294638521U);
         } else {