diff options
| author | Felix Morgner <felix.morgner@ost.ch> | 2026-07-14 18:39:45 +0200 |
|---|---|---|
| committer | Felix Morgner <felix.morgner@ost.ch> | 2026-07-14 18:39:45 +0200 |
| commit | 55adee63740c489c7fe6e639d5e35d0bc46f1f8c (patch) | |
| tree | c1432254772bc667d1bccc88f83546d142370d33 /kernel/kapi | |
| parent | af017fa7983e6730b2f8fb6acee221dd39c02b7a (diff) | |
| download | kernel-55adee63740c489c7fe6e639d5e35d0bc46f1f8c.tar.xz kernel-55adee63740c489c7fe6e639d5e35d0bc46f1f8c.zip | |
kernel/vfs: expand error_code integration
Diffstat (limited to 'kernel/kapi')
| -rw-r--r-- | kernel/kapi/filesystem.cpp | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/kernel/kapi/filesystem.cpp b/kernel/kapi/filesystem.cpp index a7c8e403..efde1336 100644 --- a/kernel/kapi/filesystem.cpp +++ b/kernel/kapi/filesystem.cpp @@ -37,20 +37,19 @@ namespace kapi::filesystem .file(file_descriptor) .transform([](auto file) { return file->get_dentry()->absolute_path(); }) .and_then([](auto path) { return kernel::filesystem::vfs::get().close(path); }) - .and_then([=]() { return kernel::filesystem::open_file_table::get().remove_file(file_descriptor); }) - .transform([](auto) { return; }); + .and_then([=]() { return kernel::filesystem::open_file_table::get().remove_file(file_descriptor); }); } auto read(size_t file_descriptor, void * buffer, size_t size) -> std::expected<std::size_t, kstd::error_code> { - return kernel::filesystem::open_file_table::get().file(file_descriptor).transform([=](auto descriptor) { + return kernel::filesystem::open_file_table::get().file(file_descriptor).and_then([=](auto descriptor) { return descriptor->read(buffer, size); }); } auto write(size_t file_descriptor, void const * buffer, size_t size) -> std::expected<std::size_t, kstd::error_code> { - return kernel::filesystem::open_file_table::get().file(file_descriptor).transform([=](auto descriptor) { + return kernel::filesystem::open_file_table::get().file(file_descriptor).and_then([=](auto descriptor) { return descriptor->write(buffer, size); }); } |
