diff options
Diffstat (limited to 'kernel/src/filesystem/ext2/ext2_inode.cpp')
| -rw-r--r-- | kernel/src/filesystem/ext2/ext2_inode.cpp | 15 |
1 files changed, 10 insertions, 5 deletions
diff --git a/kernel/src/filesystem/ext2/ext2_inode.cpp b/kernel/src/filesystem/ext2/ext2_inode.cpp index 8131f43..0a1994b 100644 --- a/kernel/src/filesystem/ext2/ext2_inode.cpp +++ b/kernel/src/filesystem/ext2/ext2_inode.cpp @@ -1,6 +1,7 @@ #include "kernel/filesystem/ext2/ext2_inode.hpp" -#include "kernel/filesystem/disk_file.hpp" +#include "kapi/system.hpp" + #include "kernel/filesystem/file.hpp" #include "kernel/filesystem/inode.hpp" #include "kernel/filesystem/inode_file.hpp" @@ -9,13 +10,17 @@ namespace filesystem::ext2 { - ext2_inode::ext2_inode(kstd::shared_ptr<disk_file> const & disk_file) + ext2_inode::ext2_inode() : inode(inode_kind::regular) - , m_disk_file(disk_file) {} - auto ext2_inode::open_file() const -> kstd::shared_ptr<file> + auto ext2_inode::open_file(kstd::shared_ptr<inode> const & self) const -> kstd::shared_ptr<filesystem::file> { - return kstd::make_shared<inode_file>(m_disk_file); + if (!self) + { + kapi::system::panic("[FILESYSTEM] ext2_inode::open_file called with null inode."); + } + + return kstd::make_shared<inode_file>(self); } } // namespace filesystem::ext2
\ No newline at end of file |
