chiark / gitweb /
Just noticed a longhand shuffling operation which I must have missed
authorSimon Tatham <anakin@pobox.com>
Mon, 17 Oct 2005 18:32:24 +0000 (18:32 +0000)
committerSimon Tatham <anakin@pobox.com>
Mon, 17 Oct 2005 18:32:24 +0000 (18:32 +0000)
when I converted them all into calls to shuffle().

[originally from svn r6404]

net.c

diff --git a/net.c b/net.c
index 29a3a27839fd1a60e1b7762f6a435d650fdcc42c..f8811a7b55cd166a1b37ce13fa639c0695a9d305 100644 (file)
--- a/net.c
+++ b/net.c
@@ -897,14 +897,7 @@ static void perturb(int w, int h, unsigned char *tiles, int wrapping,
     perim2 = snewn(nperim, struct xyd);
     memcpy(perim2, perimeter, nperim * sizeof(struct xyd));
     /* Shuffle the perimeter, so as to search it without directional bias. */
-    for (i = nperim; --i ;) {
-       int j = random_upto(rs, i+1);
-       struct xyd t;
-
-       t = perim2[j];
-       perim2[j] = perim2[i];
-       perim2[i] = t;
-    }
+    shuffle(perim2, nperim, sizeof(*perim2), rs);
     for (i = 0; i < nperim; i++) {
        int x2, y2;