diff --git a/Userland/Utilities/zip.cpp b/Userland/Utilities/zip.cpp index 6dce8adc18..d8d4dbd7fd 100644 --- a/Userland/Utilities/zip.cpp +++ b/Userland/Utilities/zip.cpp @@ -11,6 +11,7 @@ #include #include #include +#include #include ErrorOr serenity_main(Main::Arguments arguments) @@ -27,6 +28,15 @@ ErrorOr serenity_main(Main::Arguments arguments) args_parser.add_option(force, "Overwrite existing zip file", "force", 'f'); args_parser.parse(arguments); + TRY(Core::System::pledge("stdio rpath wpath cpath")); + + auto cwd = TRY(Core::System::getcwd()); + TRY(Core::System::unveil(LexicalPath::absolute_path(cwd, zip_path), "wc")); + for (auto const& source_path : source_paths) { + TRY(Core::System::unveil(LexicalPath::absolute_path(cwd, source_path), "r")); + } + TRY(Core::System::unveil(nullptr, nullptr)); + String zip_file_path { zip_path }; if (Core::File::exists(zip_file_path)) { if (force) {