From 244357472a5d9d0d9ddf507472fb220be00eae95 Mon Sep 17 00:00:00 2001 From: Ariel Don Date: Sun, 15 May 2022 10:36:19 -0500 Subject: [PATCH] LibCore: Add Core::Stream::File::exists() --- Userland/Libraries/LibCore/Stream.cpp | 5 +++++ Userland/Libraries/LibCore/Stream.h | 1 + 2 files changed, 6 insertions(+) diff --git a/Userland/Libraries/LibCore/Stream.cpp b/Userland/Libraries/LibCore/Stream.cpp index 179ee209ea..c142bfb685 100644 --- a/Userland/Libraries/LibCore/Stream.cpp +++ b/Userland/Libraries/LibCore/Stream.cpp @@ -117,6 +117,11 @@ ErrorOr> File::adopt_fd(int fd, OpenMode mode) return file; } +bool File::exists(StringView filename) +{ + return !Core::System::stat(filename).is_error(); +} + int File::open_mode_to_options(OpenMode mode) { int flags = 0; diff --git a/Userland/Libraries/LibCore/Stream.h b/Userland/Libraries/LibCore/Stream.h index 1859e86a59..2089fdac49 100644 --- a/Userland/Libraries/LibCore/Stream.h +++ b/Userland/Libraries/LibCore/Stream.h @@ -179,6 +179,7 @@ class File final : public SeekableStream { public: static ErrorOr> open(StringView filename, OpenMode, mode_t = 0644); static ErrorOr> adopt_fd(int fd, OpenMode); + static bool exists(StringView filename); File(File&& other) { operator=(move(other)); }