From d08d82cd0b9cd41ee8bf1294674b17596c0a0a94 Mon Sep 17 00:00:00 2001 From: Qingsong Chen Date: Thu, 27 Nov 2025 09:48:23 +0000 Subject: [PATCH] Fix ext2 DeviceRangeReader to prevent reading invalid blocks --- kernel/src/fs/ext2/inode.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/kernel/src/fs/ext2/inode.rs b/kernel/src/fs/ext2/inode.rs index e68a35902..3d306b36f 100644 --- a/kernel/src/fs/ext2/inode.rs +++ b/kernel/src/fs/ext2/inode.rs @@ -2026,7 +2026,7 @@ impl<'a> DeviceRangeReader<'a> { // Updates the range self.range.start += device_range.len() as Ext2Bid; - if device_range.len() == max_cnt { + if device_range.len() == max_cnt && !self.range.is_empty() { // Updates the indirect block self.update_indirect_block()?; }