shithub: puzzles

Download patch

ref: f9168d6003042b3dfa175175f54b512c5886ac18
parent: 5f16a29d4c5e90011aec7d9d00f02edf713a3304
author: Simon Tatham <anakin@pobox.com>
date: Mon Oct 17 14:32:24 EDT 2005

Just noticed a longhand shuffling operation which I must have missed
when I converted them all into calls to shuffle().

[originally from svn r6404]

--- a/net.c
+++ b/net.c
@@ -897,14 +897,7 @@
     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;