shithub: puzzles

Download patch

ref: 7abf85a9c6b460698994d9cfa538b7b26fed5e87
parent: f21c7d27664bc43d3e5a9401756860c03055c3aa
author: Simon Tatham <anakin@pobox.com>
date: Thu Apr 20 10:00:23 EDT 2023

Remove a direct use of dsf internals in Filling.

The expression 'dsf[foo] >> 2' already has a sensible wrapper
function, but Filling wasn't bothering to call it.

--- a/filling.c
+++ b/filling.c
@@ -559,7 +559,7 @@
         root = dsf_canonify(dsf, idx);
         for (m = 0; m < nhits && root != hits[m]; ++m);
         if (m < nhits) continue;
-	printv("\t  (%d, %d) contrib %d to size\n", x, y, dsf[root] >> 2);
+	printv("\t  (%d, %d) contrib %d to size\n", x, y, dsf_size(dsf, root));
         size += dsf_size(dsf, root);
         assert(dsf_size(dsf, root) >= 1);
         hits[nhits++] = root;