Browse Source

lockfile: replace random() by rand()

On Windows, we do not have functions srandom() and random(). Use srand()
and rand(). These functions produce random numbers of lesser quality,
but for the purpose (a retry time-out) they are still good enough.

Signed-off-by: Johannes Sixt <j6t@kdbg.org>
Reviewed-by: Michael Haggerty <mhagger@alum.mit.edu>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
maint
Johannes Sixt 10 years ago committed by Junio C Hamano
parent
commit
1e9676ec0a
  1. 4
      lockfile.c

4
lockfile.c

@ -191,7 +191,7 @@ static int lock_file_timeout(struct lock_file *lk, const char *path, @@ -191,7 +191,7 @@ static int lock_file_timeout(struct lock_file *lk, const char *path,
return lock_file(lk, path, flags);

if (!random_initialized) {
srandom((unsigned int)getpid());
srand((unsigned int)getpid());
random_initialized = 1;
}

@ -218,7 +218,7 @@ static int lock_file_timeout(struct lock_file *lk, const char *path, @@ -218,7 +218,7 @@ static int lock_file_timeout(struct lock_file *lk, const char *path,

backoff_ms = multiplier * INITIAL_BACKOFF_MS;
/* back off for between 0.75*backoff_ms and 1.25*backoff_ms */
wait_us = (750 + random() % 500) * backoff_ms;
wait_us = (750 + rand() % 500) * backoff_ms;
sleep_microseconds(wait_us);
remaining_us -= wait_us;


Loading…
Cancel
Save