Mercurial > hg > early-roguelike
diff rogue3/mdport.c @ 252:3d4252fa2ed3
Use more portable random seed generation.
The new function md_random_seed() has replaced time() + getpid() and
similar methods. Putting everything in mdport.c slightly reduces the
warnings and workarounds.
author | John "Elwin" Edwards |
---|---|
date | Sat, 28 Jan 2017 15:49:41 -0500 |
parents | 12e070d1a780 |
children | 8b6aba552f6f |
line wrap: on
line diff
--- a/rogue3/mdport.c Sat Jan 28 11:45:36 2017 -0500 +++ b/rogue3/mdport.c Sat Jan 28 15:49:41 2017 -0500 @@ -102,6 +102,7 @@ #include <limits.h> #include <sys/stat.h> #include <signal.h> +#include <time.h> #define NOOP(x) (x += 0) @@ -415,16 +416,6 @@ #endif } -pid_t -md_getpid(void) -{ -#ifdef _WIN32 - return( _getpid() ); -#else - return( getpid() ); -#endif -} - char * md_getusername(void) { @@ -1612,3 +1603,16 @@ return ret; } + +unsigned int +md_random_seed(void) +{ + unsigned int seed; + seed = (unsigned int) time((time_t *) NULL); +#ifdef _WIN32 + seed += _getpid(); +#else + seed += getpid(); +#endif + return seed; +}