瀏覽代碼

Kernel: Use TRY() more in process-specific ProcFS code

Andreas Kling 3 年之前
父節點
當前提交
398f8e7c96
共有 2 個文件被更改,包括 4 次插入19 次删除
  1. 3 15
      Kernel/ProcessExposed.cpp
  2. 1 4
      Kernel/ProcessSpecificExposed.cpp

+ 3 - 15
Kernel/ProcessExposed.cpp

@@ -172,29 +172,17 @@ KResultOr<size_t> ProcFSExposedLink::read_bytes(off_t offset, size_t count, User
 
 
 KResultOr<NonnullRefPtr<Inode>> ProcFSExposedLink::to_inode(const ProcFS& procfs_instance) const
 KResultOr<NonnullRefPtr<Inode>> ProcFSExposedLink::to_inode(const ProcFS& procfs_instance) const
 {
 {
-    auto maybe_inode = ProcFSLinkInode::try_create(procfs_instance, *this);
-    if (maybe_inode.is_error())
-        return maybe_inode.error();
-
-    return maybe_inode.release_value();
+    return TRY(ProcFSLinkInode::try_create(procfs_instance, *this));
 }
 }
 
 
 KResultOr<NonnullRefPtr<Inode>> ProcFSExposedComponent::to_inode(const ProcFS& procfs_instance) const
 KResultOr<NonnullRefPtr<Inode>> ProcFSExposedComponent::to_inode(const ProcFS& procfs_instance) const
 {
 {
-    auto maybe_inode = ProcFSGlobalInode::try_create(procfs_instance, *this);
-    if (maybe_inode.is_error())
-        return maybe_inode.error();
-
-    return maybe_inode.release_value();
+    return TRY(ProcFSGlobalInode::try_create(procfs_instance, *this));
 }
 }
 
 
 KResultOr<NonnullRefPtr<Inode>> ProcFSExposedDirectory::to_inode(const ProcFS& procfs_instance) const
 KResultOr<NonnullRefPtr<Inode>> ProcFSExposedDirectory::to_inode(const ProcFS& procfs_instance) const
 {
 {
-    auto maybe_inode = ProcFSDirectoryInode::try_create(procfs_instance, *this);
-    if (maybe_inode.is_error())
-        return maybe_inode.error();
-
-    return maybe_inode.release_value();
+    return TRY(ProcFSDirectoryInode::try_create(procfs_instance, *this));
 }
 }
 
 
 void ProcFSExposedDirectory::add_component(const ProcFSExposedComponent&)
 void ProcFSExposedDirectory::add_component(const ProcFSExposedComponent&)

+ 1 - 4
Kernel/ProcessSpecificExposed.cpp

@@ -112,10 +112,7 @@ KResultOr<NonnullRefPtr<Inode>> Process::lookup_file_descriptions_directory(cons
     if (!fds().get_if_valid(*maybe_index))
     if (!fds().get_if_valid(*maybe_index))
         return ENOENT;
         return ENOENT;
 
 
-    auto maybe_inode = ProcFSProcessPropertyInode::try_create_for_file_description_link(procfs, *maybe_index, pid());
-    if (maybe_inode.is_error())
-        return maybe_inode.error();
-    return maybe_inode.release_value();
+    return TRY(ProcFSProcessPropertyInode::try_create_for_file_description_link(procfs, *maybe_index, pid()));
 }
 }
 
 
 KResult Process::procfs_get_pledge_stats(KBufferBuilder& builder) const
 KResult Process::procfs_get_pledge_stats(KBufferBuilder& builder) const