aboutsummaryrefslogtreecommitdiff
path: root/util-linux/mkfs_minix.c
diff options
context:
space:
mode:
Diffstat (limited to 'util-linux/mkfs_minix.c')
-rw-r--r--util-linux/mkfs_minix.c7
1 files changed, 3 insertions, 4 deletions
diff --git a/util-linux/mkfs_minix.c b/util-linux/mkfs_minix.c
index 2ba9233df..d70d20fda 100644
--- a/util-linux/mkfs_minix.c
+++ b/util-linux/mkfs_minix.c
@@ -115,6 +115,8 @@ struct globals {
char super_block_buffer[BLOCK_SIZE];
char boot_block_buffer[512];
unsigned short good_blocks_table[MAX_GOOD_BLOCKS];
+ /* check_blocks(): buffer[] was the biggest static in entire bbox */
+ char check_blocks_buffer[BLOCK_SIZE * TEST_BUFFER_BLOCKS];
};
#define G (*ptr_to_globals)
@@ -492,8 +494,6 @@ static void alarm_intr(int alnum)
static void check_blocks(void)
{
size_t try, got;
- /* buffer[] was the biggest static in entire bbox */
- char *buffer = xmalloc(BLOCK_SIZE * TEST_BUFFER_BLOCKS);
G.currently_testing = 0;
signal(SIGALRM, alarm_intr);
@@ -505,7 +505,7 @@ static void check_blocks(void)
try = TEST_BUFFER_BLOCKS;
if (G.currently_testing + try > SB_ZONES)
try = SB_ZONES - G.currently_testing;
- got = do_check(buffer, try, G.currently_testing);
+ got = do_check(G.check_blocks_buffer, try, G.currently_testing);
G.currently_testing += got;
if (got == try)
continue;
@@ -516,7 +516,6 @@ static void check_blocks(void)
G.currently_testing++;
}
alarm(0);
- free(buffer);
printf("%d bad block(s)\n", G.badblocks);
}