diff --git a/src/add-ons/kernel/file_systems/packagefs/nodes/UnpackingDirectory.cpp b/src/add-ons/kernel/file_systems/packagefs/nodes/UnpackingDirectory.cpp index fae42662fb..75ba3cb6ee 100644 --- a/src/add-ons/kernel/file_systems/packagefs/nodes/UnpackingDirectory.cpp +++ b/src/add-ons/kernel/file_systems/packagefs/nodes/UnpackingDirectory.cpp @@ -7,6 +7,7 @@ #include "UnpackingDirectory.h" #include "DebugSupport.h" +#include "EmptyAttributeDirectoryCookie.h" #include "UnpackingAttributeCookie.h" #include "UnpackingAttributeDirectoryCookie.h" #include "Utils.h" @@ -232,6 +233,19 @@ RootDirectory::RootDirectory(ino_t id, const timespec& modifiedTime) } +status_t +RootDirectory::OpenAttributeDirectory(AttributeDirectoryCookie*& _cookie) +{ + if (HasVFSInitError()) + return B_ERROR; + + _cookie = new(std::nothrow) EmptyAttributeDirectoryCookie; + if (_cookie == nullptr) + return B_NO_MEMORY; + return B_OK; +} + + timespec RootDirectory::ModifiedTime() const { diff --git a/src/add-ons/kernel/file_systems/packagefs/nodes/UnpackingDirectory.h b/src/add-ons/kernel/file_systems/packagefs/nodes/UnpackingDirectory.h index 6d09c27aec..2e93764c36 100644 --- a/src/add-ons/kernel/file_systems/packagefs/nodes/UnpackingDirectory.h +++ b/src/add-ons/kernel/file_systems/packagefs/nodes/UnpackingDirectory.h @@ -58,6 +58,9 @@ public: RootDirectory(ino_t id, const timespec& modifiedTime); + virtual status_t OpenAttributeDirectory( + AttributeDirectoryCookie*& _cookie) override; + virtual timespec ModifiedTime() const; private: