diff --git a/Kernel/FileSystem/FileDescription.cpp b/Kernel/FileSystem/FileDescription.cpp index 6d29027a38..bd0bc23f6b 100644 --- a/Kernel/FileSystem/FileDescription.cpp +++ b/Kernel/FileSystem/FileDescription.cpp @@ -344,6 +344,14 @@ KResult FileDescription::close() return m_file->close(); } +KResultOr> FileDescription::try_serialize_absolute_path() +{ + if (m_custody) + return m_custody->try_serialize_absolute_path(); + // FIXME: Don't go through a String here! + return KString::try_create(m_file->absolute_path(*this)); +} + String FileDescription::absolute_path() const { if (m_custody) diff --git a/Kernel/FileSystem/FileDescription.h b/Kernel/FileSystem/FileDescription.h index 3f1d67c93a..45b9db794b 100644 --- a/Kernel/FileSystem/FileDescription.h +++ b/Kernel/FileSystem/FileDescription.h @@ -64,6 +64,7 @@ public: KResultOr> read_entire_file(); + KResultOr> try_serialize_absolute_path(); String absolute_path() const; bool is_direct() const { return m_direct; }