aboutsummaryrefslogtreecommitdiff
path: root/kernel
diff options
context:
space:
mode:
Diffstat (limited to 'kernel')
-rw-r--r--kernel/kernel/filesystem/ext2/error.hpp13
1 files changed, 9 insertions, 4 deletions
diff --git a/kernel/kernel/filesystem/ext2/error.hpp b/kernel/kernel/filesystem/ext2/error.hpp
index aed33ece..885f82e6 100644
--- a/kernel/kernel/filesystem/ext2/error.hpp
+++ b/kernel/kernel/filesystem/ext2/error.hpp
@@ -55,19 +55,24 @@ namespace kernel::filesystem::ext2
{
case ext2_errc::invalid_magic_number:
case ext2_errc::invalid_root_inode:
- case ext2_errc::invalid_block_group_index:
- case ext2_errc::invalid_block_index:
- case ext2_errc::invalid_block_number:
if (condition.category() == kernel::filesystem::vfs_category())
{
return condition.value() == static_cast<int>(kernel::filesystem::vfs_errc::invalid_filesystem);
}
else if (condition.category() == kstd::generic_category())
{
+ return condition.value() == static_cast<int>(kstd::errc::invalid_argument);
+ }
+ break;
+ case ext2_errc::invalid_block_group_index:
+ case ext2_errc::invalid_block_index:
+ case ext2_errc::invalid_block_number:
+ if (condition.category() == kstd::generic_category())
+ {
return condition.value() == static_cast<int>(kstd::errc::io_error);
}
+ break;
}
-
return kstd::error_category::equivalent(code, condition);
}
} constexpr inline ext2_category_instance{};