diff --git a/Tests/LibWasm/test-wasm.cpp b/Tests/LibWasm/test-wasm.cpp index f761a742435..e748ae5f71a 100644 --- a/Tests/LibWasm/test-wasm.cpp +++ b/Tests/LibWasm/test-wasm.cpp @@ -8,6 +8,7 @@ #include #include #include +#include TEST_ROOT("Userland/Libraries/LibWasm/Tests"); @@ -16,7 +17,7 @@ TESTJS_GLOBAL_FUNCTION(read_binary_wasm_file, readBinaryWasmFile) auto filename = TRY(vm.argument(0).to_string(global_object)); auto file = Core::File::open(filename, Core::OpenMode::ReadOnly); if (file.is_error()) - return vm.throw_completion(global_object, file.error().string()); + return vm.throw_completion(global_object, strerror(file.error().code())); auto contents = file.value()->read_all(); auto array = JS::Uint8Array::create(global_object, contents.size()); contents.span().copy_to(array->data()); diff --git a/Userland/Applications/FontEditor/GlyphEditorWidget.cpp b/Userland/Applications/FontEditor/GlyphEditorWidget.cpp index a36b3586bbf..d4877bca4ed 100644 --- a/Userland/Applications/FontEditor/GlyphEditorWidget.cpp +++ b/Userland/Applications/FontEditor/GlyphEditorWidget.cpp @@ -11,6 +11,7 @@ #include #include #include +#include static int x_offset; static int y_offset; diff --git a/Userland/Applications/HexEditor/HexEditor.cpp b/Userland/Applications/HexEditor/HexEditor.cpp index e4ec9af54ea..35dc37f6ec6 100644 --- a/Userland/Applications/HexEditor/HexEditor.cpp +++ b/Userland/Applications/HexEditor/HexEditor.cpp @@ -23,6 +23,7 @@ #include #include #include +#include #include HexEditor::HexEditor() diff --git a/Userland/Applications/PixelPaint/Image.cpp b/Userland/Applications/PixelPaint/Image.cpp index dca4e320e50..25b60c704b4 100644 --- a/Userland/Applications/PixelPaint/Image.cpp +++ b/Userland/Applications/PixelPaint/Image.cpp @@ -159,7 +159,7 @@ Result Image::write_to_file(const String& file_path) const auto file_or_error = Core::File::open(file_path, (Core::OpenMode)(Core::OpenMode::WriteOnly | Core::OpenMode::Truncate)); if (file_or_error.is_error()) - return String { file_or_error.error().string() }; + return String { strerror(file_or_error.error().code()) }; if (!file_or_error.value()->write(builder.string_view())) return String { file_or_error.value()->error_string() }; diff --git a/Userland/Applications/PixelPaint/PaletteWidget.cpp b/Userland/Applications/PixelPaint/PaletteWidget.cpp index bae64b426c0..d5adcf290cd 100644 --- a/Userland/Applications/PixelPaint/PaletteWidget.cpp +++ b/Userland/Applications/PixelPaint/PaletteWidget.cpp @@ -15,6 +15,7 @@ #include #include #include +#include REGISTER_WIDGET(PixelPaint, PaletteWidget); @@ -263,7 +264,7 @@ Result, String> PaletteWidget::load_palette_path(String const& fil { auto file_or_error = Core::File::open(file_path, Core::OpenMode::ReadOnly); if (file_or_error.is_error()) - return String { file_or_error.error().string() }; + return String { strerror(file_or_error.error().code()) }; auto& file = *file_or_error.value(); return load_palette_file(file); diff --git a/Userland/Applications/Run/RunWindow.cpp b/Userland/Applications/Run/RunWindow.cpp index 6964ac3be80..96eb30ce358 100644 --- a/Userland/Applications/Run/RunWindow.cpp +++ b/Userland/Applications/Run/RunWindow.cpp @@ -20,6 +20,7 @@ #include #include #include +#include #include #include diff --git a/Userland/Applications/Spreadsheet/ExportDialog.cpp b/Userland/Applications/Spreadsheet/ExportDialog.cpp index 62a82f53be2..680d770e66f 100644 --- a/Userland/Applications/Spreadsheet/ExportDialog.cpp +++ b/Userland/Applications/Spreadsheet/ExportDialog.cpp @@ -22,6 +22,7 @@ #include #include #include +#include #include // This is defined in ImportDialog.cpp, we can't include it twice, since the generated symbol is exported. diff --git a/Userland/Applications/Spreadsheet/Readers/Test/TestXSV.cpp b/Userland/Applications/Spreadsheet/Readers/Test/TestXSV.cpp index 5dbe2a59661..0103e4c6c04 100644 --- a/Userland/Applications/Spreadsheet/Readers/Test/TestXSV.cpp +++ b/Userland/Applications/Spreadsheet/Readers/Test/TestXSV.cpp @@ -10,6 +10,7 @@ #include "../XSV.h" #include #include +#include TEST_CASE(should_parse_valid_data) { diff --git a/Userland/Applications/Spreadsheet/Workbook.cpp b/Userland/Applications/Spreadsheet/Workbook.cpp index 40c94e12fe6..df9b331d4ea 100644 --- a/Userland/Applications/Spreadsheet/Workbook.cpp +++ b/Userland/Applications/Spreadsheet/Workbook.cpp @@ -51,7 +51,7 @@ Result Workbook::load(const StringView& filename) sb.append("Failed to open "); sb.append(filename); sb.append(" for reading. Error: "); - sb.append(file_or_error.error().string()); + sb.appendff("{}", file_or_error.error()); return sb.to_string(); } diff --git a/Userland/Libraries/LibCore/File.cpp b/Userland/Libraries/LibCore/File.cpp index 141163b3548..184042d5693 100644 --- a/Userland/Libraries/LibCore/File.cpp +++ b/Userland/Libraries/LibCore/File.cpp @@ -27,11 +27,11 @@ namespace Core { -Result, OSError> File::open(String filename, OpenMode mode, mode_t permissions) +ErrorOr> File::open(String filename, OpenMode mode, mode_t permissions) { auto file = File::construct(move(filename)); if (!file->open_impl(mode, permissions)) - return OSError(file->error()); + return Error::from_errno(file->error()); return file; } diff --git a/Userland/Libraries/LibCore/File.h b/Userland/Libraries/LibCore/File.h index 2ec2e8c0a49..34b024b1609 100644 --- a/Userland/Libraries/LibCore/File.h +++ b/Userland/Libraries/LibCore/File.h @@ -7,8 +7,6 @@ #pragma once #include -#include -#include #include #include #include @@ -20,7 +18,7 @@ class File final : public IODevice { public: virtual ~File() override; - static Result, OSError> open(String filename, OpenMode, mode_t = 0644); + static ErrorOr> open(String filename, OpenMode, mode_t = 0644); String filename() const { return m_filename; } void set_filename(const String filename) { m_filename = move(filename); } diff --git a/Userland/Libraries/LibCore/FileStream.h b/Userland/Libraries/LibCore/FileStream.h index 4069383b371..f8462397d71 100644 --- a/Userland/Libraries/LibCore/FileStream.h +++ b/Userland/Libraries/LibCore/FileStream.h @@ -9,6 +9,7 @@ #include #include #include +#include #include namespace Core { @@ -20,28 +21,18 @@ public: { } - static Result open(StringView filename, OpenMode mode = OpenMode::ReadOnly, mode_t permissions = 0644) + static ErrorOr open(StringView filename, OpenMode mode = OpenMode::ReadOnly, mode_t permissions = 0644) { VERIFY(has_flag(mode, OpenMode::ReadOnly)); - - auto file_result = File::open(filename, mode, permissions); - - if (file_result.is_error()) - return file_result.error(); - - return InputFileStream { file_result.value() }; + auto file = TRY(File::open(filename, mode, permissions)); + return InputFileStream { move(file) }; } - static Result, OSError> open_buffered(StringView filename, OpenMode mode = OpenMode::ReadOnly, mode_t permissions = 0644) + static ErrorOr> open_buffered(StringView filename, OpenMode mode = OpenMode::ReadOnly, mode_t permissions = 0644) { VERIFY(has_flag(mode, OpenMode::ReadOnly)); - - auto file_result = File::open(filename, mode, permissions); - - if (file_result.is_error()) - return file_result.error(); - - return Buffered { file_result.value() }; + auto file = TRY(File::open(filename, mode, permissions)); + return Buffered { move(file) }; } size_t read(Bytes bytes) override @@ -89,28 +80,18 @@ public: { } - static Result open(StringView filename, OpenMode mode = OpenMode::WriteOnly, mode_t permissions = 0644) + static ErrorOr open(StringView filename, OpenMode mode = OpenMode::WriteOnly, mode_t permissions = 0644) { VERIFY(has_flag(mode, OpenMode::WriteOnly)); - - auto file_result = File::open(filename, mode, permissions); - - if (file_result.is_error()) - return file_result.error(); - - return OutputFileStream { file_result.value() }; + auto file = TRY(File::open(filename, mode, permissions)); + return OutputFileStream { move(file) }; } - static Result, OSError> open_buffered(StringView filename, OpenMode mode = OpenMode::WriteOnly, mode_t permissions = 0644) + static ErrorOr> open_buffered(StringView filename, OpenMode mode = OpenMode::WriteOnly, mode_t permissions = 0644) { VERIFY(has_flag(mode, OpenMode::WriteOnly)); - - auto file_result = File::open(filename, mode, permissions); - - if (file_result.is_error()) - return file_result.error(); - - return Buffered { file_result.value() }; + auto file = TRY(File::open(filename, mode, permissions)); + return Buffered { move(file) }; } static OutputFileStream standard_output() diff --git a/Userland/Libraries/LibGUI/FileIconProvider.cpp b/Userland/Libraries/LibGUI/FileIconProvider.cpp index a51dbe6be35..82180adee0c 100644 --- a/Userland/Libraries/LibGUI/FileIconProvider.cpp +++ b/Userland/Libraries/LibGUI/FileIconProvider.cpp @@ -16,6 +16,7 @@ #include #include #include +#include #include #include diff --git a/Userland/Libraries/LibGfx/BitmapFont.cpp b/Userland/Libraries/LibGfx/BitmapFont.cpp index 60ad4b16f0a..b97968b0132 100644 --- a/Userland/Libraries/LibGfx/BitmapFont.cpp +++ b/Userland/Libraries/LibGfx/BitmapFont.cpp @@ -11,6 +11,7 @@ #include #include #include +#include namespace Gfx { diff --git a/Userland/Libraries/LibSQL/Heap.h b/Userland/Libraries/LibSQL/Heap.h index caef7e8702a..b78b486dda3 100644 --- a/Userland/Libraries/LibSQL/Heap.h +++ b/Userland/Libraries/LibSQL/Heap.h @@ -8,6 +8,7 @@ #include #include +#include #include #include #include diff --git a/Userland/Libraries/LibWeb/Loader/ResourceLoader.cpp b/Userland/Libraries/LibWeb/Loader/ResourceLoader.cpp index 1c2bb062088..e87e674d98c 100644 --- a/Userland/Libraries/LibWeb/Loader/ResourceLoader.cpp +++ b/Userland/Libraries/LibWeb/Loader/ResourceLoader.cpp @@ -177,9 +177,9 @@ void ResourceLoader::load(LoadRequest& request, Function const& sources); static int execute_work_items(Vector const& items); static void report_error(String message); static void report_warning(String message); -static AK::Result, AK::OSError> open_destination_file(String const& destination); +static ErrorOr> open_destination_file(String const& destination); static String deduplicate_destination_file_name(String const& destination); int main(int argc, char** argv) @@ -379,10 +379,10 @@ int execute_work_items(Vector const& items) return 0; } -AK::Result, AK::OSError> open_destination_file(String const& destination) +ErrorOr> open_destination_file(String const& destination) { auto destination_file_or_error = Core::File::open(destination, (Core::OpenMode)(Core::OpenMode::WriteOnly | Core::OpenMode::Truncate | Core::OpenMode::MustBeNew)); - if (destination_file_or_error.is_error() && destination_file_or_error.error().error() == EEXIST) { + if (destination_file_or_error.is_error() && destination_file_or_error.error().code() == EEXIST) { return open_destination_file(deduplicate_destination_file_name(destination)); } return destination_file_or_error; diff --git a/Userland/Services/WindowServer/ScreenLayout.ipp b/Userland/Services/WindowServer/ScreenLayout.ipp index 04c9f4f87ef..877c10db768 100644 --- a/Userland/Services/WindowServer/ScreenLayout.ipp +++ b/Userland/Services/WindowServer/ScreenLayout.ipp @@ -9,6 +9,7 @@ #include #include #include +#include // Must be included after LibIPC/Forward.h #include diff --git a/Userland/Utilities/arp.cpp b/Userland/Utilities/arp.cpp index 11837795ed8..d19a89140de 100644 --- a/Userland/Utilities/arp.cpp +++ b/Userland/Utilities/arp.cpp @@ -16,6 +16,7 @@ #include #include #include +#include #include #include #include diff --git a/Userland/Utilities/cksum.cpp b/Userland/Utilities/cksum.cpp index 46250a664c1..be7a6d37115 100644 --- a/Userland/Utilities/cksum.cpp +++ b/Userland/Utilities/cksum.cpp @@ -8,6 +8,7 @@ #include #include #include +#include int main(int argc, char** argv) { diff --git a/Userland/Utilities/errno.cpp b/Userland/Utilities/errno.cpp index a95885914af..7618d4c3e50 100644 --- a/Userland/Utilities/errno.cpp +++ b/Userland/Utilities/errno.cpp @@ -5,7 +5,7 @@ */ #include -#include +#include int main(int argc, char** argv) { diff --git a/Userland/Utilities/hexdump.cpp b/Userland/Utilities/hexdump.cpp index f14eb43a1b2..2a8c08aff32 100644 --- a/Userland/Utilities/hexdump.cpp +++ b/Userland/Utilities/hexdump.cpp @@ -8,6 +8,7 @@ #include #include #include +#include static constexpr size_t LINE_LENGTH_BYTES = 16; diff --git a/Userland/Utilities/mv.cpp b/Userland/Utilities/mv.cpp index 29f607d2be5..56cc52343e2 100644 --- a/Userland/Utilities/mv.cpp +++ b/Userland/Utilities/mv.cpp @@ -9,6 +9,7 @@ #include #include #include +#include #include #include diff --git a/Userland/Utilities/sql.cpp b/Userland/Utilities/sql.cpp index d0ae3ab87de..b078b728bde 100644 --- a/Userland/Utilities/sql.cpp +++ b/Userland/Utilities/sql.cpp @@ -178,7 +178,7 @@ private: auto file_name = m_input_file_chain.take_first(); auto file_or_error = Core::File::open(file_name, Core::OpenMode::ReadOnly); if (file_or_error.is_error()) { - warnln("Input file {} could not be opened: {}", file_name, file_or_error.error().string()); + warnln("Input file {} could not be opened: {}", file_name, file_or_error.error()); return {}; } m_input_file = file_or_error.value();