fsck: fix wrap on full sized fs
authorAlan Cox <alan@linux.intel.com>
Tue, 24 Oct 2017 23:36:46 +0000 (00:36 +0100)
committerAlan Cox <alan@linux.intel.com>
Tue, 24 Oct 2017 23:36:46 +0000 (00:36 +0100)
Noticed by Brett

Applications/util/fsck.c

index f708fd9..1461a9f 100644 (file)
@@ -246,12 +246,13 @@ int main(int argc, char **argv)
     if (!yes())
         exit(error | 32);
 
-    bitmap = calloc((swizzle16(superblock.s_fsize) + 7) / 8, sizeof(char));
+    bitmap = calloc((swizzle16(superblock.s_fsize) + 7UL) / 8, sizeof(char));
     linkmap = (int16_t *) calloc(8 * swizzle16(superblock.s_isize), sizeof(int16_t));
 
     printf("Memory pool %d bytes\n",
         16 * swizzle16(superblock.s_isize) +
-        swizzle16(superblock.s_fsize + 7) / 8);
+        swizzle16(superblock.s_fsize + 7UL) / 8);
+
     if (!bitmap || !linkmap) {
         fprintf(stderr, "Not enough memory.\n");
         exit(error | 8);