浏览代码

Kernel: Remove friend classes from ProcFSComponentsRegistrar

Andreas Kling 4 年之前
父节点
当前提交
c1143e1bae
共有 3 个文件被更改,包括 3 次插入7 次删除
  1. 1 1
      Kernel/GlobalProcessExposed.cpp
  2. 1 1
      Kernel/ProcessExposed.cpp
  3. 1 5
      Kernel/ProcessExposed.h

+ 1 - 1
Kernel/GlobalProcessExposed.cpp

@@ -867,7 +867,7 @@ UNMAP_AFTER_INIT NonnullRefPtr<ProcFSRootDirectory> ProcFSRootDirectory::must_cr
 
 KResult ProcFSRootDirectory::traverse_as_directory(unsigned fsid, Function<bool(FileSystem::DirectoryEntryView const&)> callback) const
 {
-    Locker locker(ProcFSComponentsRegistrar::the().m_lock);
+    Locker locker(ProcFSComponentsRegistrar::the().get_lock());
     callback({ ".", { fsid, component_index() }, 0 });
     callback({ "..", { fsid, 0 }, 0 });
 

+ 1 - 1
Kernel/ProcessExposed.cpp

@@ -242,7 +242,7 @@ RefPtr<ProcFSExposedComponent> ProcFSExposedDirectory::lookup(StringView name)
 
 KResult ProcFSExposedDirectory::traverse_as_directory(unsigned fsid, Function<bool(FileSystem::DirectoryEntryView const&)> callback) const
 {
-    Locker locker(ProcFSComponentsRegistrar::the().m_lock);
+    Locker locker(ProcFSComponentsRegistrar::the().get_lock());
     auto parent_folder = m_parent_folder.strong_ref();
     if (parent_folder.is_null())
         return KResult(EINVAL);

+ 1 - 5
Kernel/ProcessExposed.h

@@ -29,11 +29,6 @@ class ProcFSBusDirectory;
 class ProcFSSystemBoolean;
 
 class ProcFSComponentsRegistrar {
-    friend class ProcFS;
-    friend class ProcFSExposedComponent;
-    friend class ProcFSExposedDirectory;
-    friend class ProcFSRootDirectory;
-
 public:
     static ProcFSComponentsRegistrar& the();
 
@@ -50,6 +45,7 @@ public:
     void unregister_process(Process&);
 
     ProcFSRootDirectory& root_folder() { return *m_root_folder; }
+    Lock& get_lock() { return m_lock; }
 
 private:
     Lock m_lock;