Fix warnings and build issues and update binary image
diff --git a/limine.bin b/limine.bin
index bc696fbc..de9bc54a 100644
Binary files a/limine.bin and b/limine.bin differ
diff --git a/stage2/fs/ext2.c b/stage2/fs/ext2.c
index 35bfa323..485b3704 100644
--- a/stage2/fs/ext2.c
+++ b/stage2/fs/ext2.c
@@ -262,9 +262,9 @@ static struct ext4_extent_header* ext4_find_leaf(struct ext4_extent_header* ext_
if (--i < 0)
panic("extent not found");
- uint64_t block = (index[i].leaf_hi << 32) | index[i].leaf;
+ uint64_t block = ((uint64_t)index[i].leaf_hi << 32) | index[i].leaf;
if(!buf)
- buf = balloc(block_size);
+ buf = conv_mem_alloc(block_size);
read_partition(drive, part, buf, (block * block_size), block_size);
ext_block = buf;
}
@@ -305,7 +305,7 @@ static int inode_read(void *buf, uint64_t loc, uint64_t count,
if (block >= ext[i].len) {
panic("block longer than extent");
} else {
- uint64_t start = (ext[i].start_hi << 32) + ext[i].start;
+ uint64_t start = ((uint64_t)ext[i].start_hi << 32) + ext[i].start;
block_index = start + block;
}
} else {
