commit a86737ea819b9ed33909b5f6ebfca5bd43bb6272
parent 7213b226d78032b18dd0b679894f346d534b0198
Author: fengyichui <fengyichui@gmail.com>
Date: Thu, 15 Nov 2018 17:56:35 +0800
Fix BLK_SHIFT may be wrong in some platforms #128
Diffstat:
1 file changed, 2 insertions(+), 14 deletions(-)
diff --git a/src/nnn.c b/src/nnn.c
@@ -417,18 +417,6 @@ static uchar crc8fast(uchar const message[], size_t n)
return remainder;
}
-/* Get platform block shift */
-static int get_blk_shift(void)
-{
- int shift;
- for (shift = 0; shift < 32; ++shift)
- {
- if ((1<<shift) & S_BLKSIZE)
- break;
- }
- return shift;
-}
-
/* Messages show up at the bottom */
static void printmsg(const char *msg)
{
@@ -2917,7 +2905,7 @@ nochange:
cfg.blkorder ^= 1;
nftw_fn = &sum_bsizes;
cfg.apparentsz = 0;
- BLK_SHIFT = get_blk_shift();
+ BLK_SHIFT = ffs(S_BLKSIZE) - 1;
}
if (cfg.blkorder) {
@@ -3412,7 +3400,7 @@ int main(int argc, char *argv[])
int opt;
// Get platform block shift
- BLK_SHIFT = get_blk_shift();
+ BLK_SHIFT = ffs(S_BLKSIZE) - 1;
/* Confirm we are in a terminal */
if (!isatty(0) || !isatty(1)) {