]> git.cameronkatri.com Git - bsdgames-darwin.git/commitdiff
robots: Use arc4random_uniform for better uniform distribution
authornia <nia@NetBSD.org>
Sun, 26 Jul 2020 15:38:22 +0000 (15:38 +0000)
committernia <nia@NetBSD.org>
Sun, 26 Jul 2020 15:38:22 +0000 (15:38 +0000)
robots/main.c
robots/rnd_pos.c

index 7a38b3d0cf61c65ec4e637a78697b21cf7976dc7..3030b4126ccaa8f141eca9bd7b7ee667abf8f8ab 100644 (file)
@@ -1,4 +1,4 @@
-/*     $NetBSD: main.c,v 1.32 2009/08/12 08:30:55 dholland Exp $       */
+/*     $NetBSD: main.c,v 1.33 2020/07/26 15:38:22 nia Exp $    */
 
 /*
  * Copyright (c) 1980, 1993
@@ -39,7 +39,7 @@ __COPYRIGHT("@(#) Copyright (c) 1980, 1993\
 #if 0
 static char sccsid[] = "@(#)main.c     8.1 (Berkeley) 5/31/93";
 #else
-__RCSID("$NetBSD: main.c,v 1.32 2009/08/12 08:30:55 dholland Exp $");
+__RCSID("$NetBSD: main.c,v 1.33 2020/07/26 15:38:22 nia Exp $");
 #endif
 #endif /* not lint */
 
@@ -167,7 +167,6 @@ main(int argc, char **argv)
                stdscr = newwin(Y_SIZE, X_SIZE, 0, 0);
        }
 
-       srandom(time(NULL));
        if (Real_time)
                signal(SIGALRM, move_robots);
        do {
index 5fe2cc04b7500b068d127b967807216ebd56b6b1..8b1c416f1a890e2d66f1e0a037d3d760615cd455 100644 (file)
@@ -1,4 +1,4 @@
-/*     $NetBSD: rnd_pos.c,v 1.10 2009/08/12 08:30:55 dholland Exp $    */
+/*     $NetBSD: rnd_pos.c,v 1.11 2020/07/26 15:38:22 nia Exp $ */
 
 /*
  * Copyright (c) 1980, 1993
@@ -34,7 +34,7 @@
 #if 0
 static char sccsid[] = "@(#)rnd_pos.c  8.1 (Berkeley) 5/31/93";
 #else
-__RCSID("$NetBSD: rnd_pos.c,v 1.10 2009/08/12 08:30:55 dholland Exp $");
+__RCSID("$NetBSD: rnd_pos.c,v 1.11 2020/07/26 15:38:22 nia Exp $");
 #endif
 #endif /* not lint */
 
@@ -44,8 +44,6 @@ __RCSID("$NetBSD: rnd_pos.c,v 1.10 2009/08/12 08:30:55 dholland Exp $");
 
 #define IS_SAME(p,y,x) ((p).y != -1 && (p).y == y && (p).x == x)
 
-static int rnd(int);
-
 /*
  * rnd_pos:
  *     Pick a random, unoccupied position
@@ -57,17 +55,10 @@ rnd_pos(void)
        static int call = 0;
 
        do {
-               pos.y = rnd(Y_FIELDSIZE - 1) + 1;
-               pos.x = rnd(X_FIELDSIZE - 1) + 1;
+               pos.y = arc4random_uniform(Y_FIELDSIZE - 1) + 1;
+               pos.x = arc4random_uniform(X_FIELDSIZE - 1) + 1;
                refresh();
        } while (Field[pos.y][pos.x] != 0);
        call++;
        return &pos;
 }
-
-static int
-rnd(int range)
-{
-
-       return random() % range;
-}