diff --git a/Kernel/FileSystem/Ext2FileSystem.cpp b/Kernel/FileSystem/Ext2FileSystem.cpp index e1e3eef290..6459977690 100644 --- a/Kernel/FileSystem/Ext2FileSystem.cpp +++ b/Kernel/FileSystem/Ext2FileSystem.cpp @@ -827,7 +827,7 @@ Vector Ext2FS::allocate_blocks(GroupIndex group_index, int c auto bitmap_block = read_block(bgd.bg_block_bitmap); int blocks_in_group = min(blocks_per_group(), super_block().s_blocks_count); auto block_bitmap = Bitmap::wrap(bitmap_block.pointer(), blocks_in_group); - BlockIndex first_block_in_group = (group_index - 1) * blocks_per_group() + 1; + BlockIndex first_block_in_group = (group_index - 1) * blocks_per_group(); for (int i = 0; i < block_bitmap.size(); ++i) { if (!block_bitmap.get(i)) { blocks.append(first_block_in_group + i); @@ -986,7 +986,7 @@ bool Ext2FS::set_block_allocation_state(BlockIndex block_index, bool new_state) unsigned group_index = group_index_from_block_index(block_index); auto& bgd = group_descriptor(group_index); BlockIndex index_in_group = block_index - ((group_index - 1) * blocks_per_group()); - unsigned bit_index = (index_in_group - 1) % blocks_per_group(); + unsigned bit_index = index_in_group % blocks_per_group(); dbgprintf(" index_in_group: %u\n", index_in_group); dbgprintf(" blocks_per_group: %u\n", blocks_per_group()); dbgprintf(" bit_index: %u\n", bit_index);