From 5e6dfb27c80663b33eb2e32b0bc1b6fd81d84c6d Mon Sep 17 00:00:00 2001 From: Bobbi Webber-Manners Date: Sun, 7 Jun 2020 16:05:15 -0400 Subject: [PATCH] Fixes to getfreeandused(). Wrong blocksize used. Block # overflow -> 0. --- sortdir.c | 8 ++++---- sortdir.po | Bin 143360 -> 143360 bytes 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/sortdir.c b/sortdir.c index 60efc61..aef5605 100644 --- a/sortdir.c +++ b/sortdir.c @@ -3,7 +3,6 @@ * * Bobbi January-June 2020 * - * TODO: Fix bug - blocks used count is incorrect. * TODO: Fix bug - if too many files in a directory the blocks of the remaining * files are not marked as used. * TODO: zeroblock() is NO-OP at present @@ -38,6 +37,7 @@ * v0.73 Speedup to checkfreeandused(); * v0.74 Eliminate no-op sort. * v0.75 Fix bug - crash when too many files to sort. + * v0.76 Fix bug - checkfreeandused() not traversing all freelist. */ //#pragma debug 9 @@ -1933,7 +1933,7 @@ void interactive(void) { revers(1); hlinechar(' '); - fputs("S O R T D I R v0.75 alpha Use ^ to return to previous question", stdout); + fputs("S O R T D I R v0.76 alpha Use ^ to return to previous question", stdout); hlinechar(' '); revers(0); @@ -2099,7 +2099,7 @@ void checkfreeandused(uchar device) { uchar fl, ul, bit; uint byte, blk = 1, blkcnt = 0; printf("Total blks %u", totblks); - for (byte = 0; byte < flsize * 256; ++byte) { + for (byte = 0; byte < flsize * BLKSZ; ++byte) { #ifdef AUXMEM copyaux(freelist + byte, &fl, 1, FROMAUX); copyaux(usedlist + byte, &ul, 1, FROMAUX); @@ -2108,7 +2108,7 @@ void checkfreeandused(uchar device) { ul = usedlist[byte]; #endif for (bit = 0; bit < 8; ++bit) { - if (blk > totblks) + if ((blk > totblks) || (blk == 0)) break; if ((fl << bit) & 0x80) { /* Free */ diff --git a/sortdir.po b/sortdir.po index 77d988f3e979acf0840e99cf3f3763e708f6e95c..5a7e53658c669f1300c0993eec8051108bd8372b 100644 GIT binary patch delta 25242 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