From 8af732d13cca7e5a8de86455885b748dc9775267 Mon Sep 17 00:00:00 2001 From: Greg Lehey Date: Sat, 23 Jul 2005 01:46:50 +0000 Subject: [PATCH] Use a random number to seed the random number generator. Goodby, Rush Limbaugh. This should have already worked properly if random(4) has been initialized correctly, but it seems that this is frequently not the case. Instead, use the microsecond part of the current time as the seed. --- games/fortune/fortune/fortune.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/games/fortune/fortune/fortune.c b/games/fortune/fortune/fortune.c index a7a8f452e612..60e6cbc7f127 100644 --- a/games/fortune/fortune/fortune.c +++ b/games/fortune/fortune/fortune.c @@ -174,6 +174,7 @@ char *av[]; #ifdef OK_TO_WRITE_DISK int fd; #endif /* OK_TO_WRITE_DISK */ + struct timeval now; (void) setlocale(LC_ALL, ""); @@ -183,7 +184,8 @@ char *av[]; exit(find_matches() != 0); init_prob(); - srandomdev(); + gettimeofday(&now, NULL); + srandom(now.tv_usec); do { get_fort(); } while ((Short_only && fortlen() > SLEN) ||