diff --git a/contrib/awk/builtin.c b/contrib/awk/builtin.c index 240dca4be56..dcf3ac3e4d2 100644 --- a/contrib/awk/builtin.c +++ b/contrib/awk/builtin.c @@ -1509,7 +1509,8 @@ do_srand(NODE *tree) if (tree == NULL) #ifdef __FreeBSD__ - srandom((unsigned int) (save_seed = (long) time((time_t *) 0) ^ getpid())); + srandom((unsigned int) (save_seed = (long) time((time_t *) 0) + ^ (getpid() << 16))); #else srandom((unsigned int) (save_seed = (long) time((time_t *) 0))); #endif