Use knuth shuffle instead of silly shuffle.

Index: canfield.c
===================================================================
RCS file: /cvs/src/games/canfield/canfield/canfield.c,v
retrieving revision 1.13
diff -u -p -r1.13 canfield.c
--- canfield.c  29 Aug 2013 20:22:11 -0000      1.13
+++ canfield.c  3 Nov 2014 17:26:01 -0000
@@ -533,8 +533,8 @@ shuffle(struct cardtype *deck[])
                deck[i]->visible = FALSE;
                deck[i]->paid = FALSE;
        }
-       for (i = decksize-1; i>=0; i--) {
-               j = arc4random_uniform(decksize);
+       for (i = decksize - 1; i > 0; i--) {
+               j = arc4random_uniform(i + 1);
                if (i != j) {
                        temp = deck[i];
                        deck[i] = deck[j];

Reply via email to