diff options
Diffstat (limited to 'kernel/filesystem/include')
| -rw-r--r-- | kernel/filesystem/include/filesystem/file_descriptor_table.hpp | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/kernel/filesystem/include/filesystem/file_descriptor_table.hpp b/kernel/filesystem/include/filesystem/file_descriptor_table.hpp index a865d32..44fd428 100644 --- a/kernel/filesystem/include/filesystem/file_descriptor_table.hpp +++ b/kernel/filesystem/include/filesystem/file_descriptor_table.hpp @@ -4,6 +4,7 @@ #include "open_file_description.hpp" #include <array> +#include <optional> namespace filesystem { @@ -15,13 +16,15 @@ namespace filesystem ~file_descriptor_table() = default; auto add_file(open_file_description & f) -> int; - auto get_file(int fd) -> open_file_description &; + auto get_file(int fd) -> std::optional<open_file_description>; auto remove_file(int fd) -> void; private: file_descriptor_table() = default; - std::array<open_file_description *, 32> m_open_files{}; // TODO BA-FS26 use kstd::vector when available + // TODO BA-FS26 use kstd::shared_ptr when available + // TODO BA-FS26 use kstd::vector when available + std::array<std::optional<open_file_description>, 32> m_open_files{}; }; } // namespace filesystem |
