aboutsummaryrefslogtreecommitdiff
path: root/src/pruning.c
diff options
context:
space:
mode:
authorSebastiano Tronto <sebastiano@tronto.net>2022-06-01 09:34:35 +0200
committerSebastiano Tronto <sebastiano@tronto.net>2022-06-01 09:34:35 +0200
commit62c9e8012e9a0844d9597b90723a928b71ad103b (patch)
treea71621010f556333b10b85cf0ecf3398fd3a4734 /src/pruning.c
parentf021ee7fa4975eab02c158451093a28e83a725d9 (diff)
downloadnissy-62c9e8012e9a0844d9597b90723a928b71ad103b.tar.gz
nissy-62c9e8012e9a0844d9597b90723a928b71ad103b.zip
Fixed some bugs - still more testing needed
Diffstat (limited to 'src/pruning.c')
-rw-r--r--src/pruning.c16
1 files changed, 7 insertions, 9 deletions
diff --git a/src/pruning.c b/src/pruning.c
index 36445b7..6cab7e7 100644
--- a/src/pruning.c
+++ b/src/pruning.c
@@ -258,22 +258,20 @@ genptable_compress(PruneData *pd)
258static void 258static void
259genptable_fixnasty(PruneData *pd, int d) 259genptable_fixnasty(PruneData *pd, int d)
260{ 260{
261 uint64_t i, ii, mask; 261 uint64_t i, ii;
262 Trans t; 262 int j, n;
263 Trans t, aux[NTRANS];
263 264
264 if (pd->coord->sd == NULL) 265 if (pd->coord->tfind == NULL)
265 return; 266 return;
266 267
267 for (i = 0; i < pd->coord->max; i++) { 268 for (i = 0; i < pd->coord->max; i++) {
268 if (ptableval_index(pd, i) == d) { 269 if (ptableval_index(pd, i) == d) {
269 mask = pd->coord->sd->selfsim[i]; 270 if ((n = pd->coord->tfind(i, aux)) == 1)
270 if (mask == (1 << uf))
271 continue; 271 continue;
272 272
273 for (t = 0; t < NTRANS; t++) { 273 for (j = 0; j < n; j++) {
274 if (!((1 << t) & mask)) 274 t = aux[j];
275 continue;
276
277 ii = pd->coord->transform(t, i); 275 ii = pd->coord->transform(t, i);
278 if (ptableval_index(pd, ii) > d) { 276 if (ptableval_index(pd, ii) > d) {
279 ptable_update_index(pd, ii, d); 277 ptable_update_index(pd, ii, d);

Generated with cgit - Back to sebastiano.tronto.net