From b3b7e76c10bafcca18a2d102ce1f3e41797d9b9c Mon Sep 17 00:00:00 2001 From: Sam Atkins Date: Mon, 17 Feb 2025 15:12:28 +0000 Subject: [PATCH] IPCCompiler: Remove invalid state from IPC message classes At some point, we stopped ever constructing invalid messages. This makes that clearer, and will allow us to stop requiring that IPC arguments be default-constructible. --- Libraries/LibIPC/Message.h | 1 - Meta/Lagom/Tools/CodeGenerators/IPCCompiler/main.cpp | 10 +--------- 2 files changed, 1 insertion(+), 10 deletions(-) diff --git a/Libraries/LibIPC/Message.h b/Libraries/LibIPC/Message.h index c0b9b39291..8321973269 100644 --- a/Libraries/LibIPC/Message.h +++ b/Libraries/LibIPC/Message.h @@ -69,7 +69,6 @@ public: virtual u32 endpoint_magic() const = 0; virtual int message_id() const = 0; virtual char const* message_name() const = 0; - virtual bool valid() const = 0; virtual ErrorOr encode() const = 0; protected: diff --git a/Meta/Lagom/Tools/CodeGenerators/IPCCompiler/main.cpp b/Meta/Lagom/Tools/CodeGenerators/IPCCompiler/main.cpp index a939c7b7b3..dfca16c1ca 100644 --- a/Meta/Lagom/Tools/CodeGenerators/IPCCompiler/main.cpp +++ b/Meta/Lagom/Tools/CodeGenerators/IPCCompiler/main.cpp @@ -345,7 +345,6 @@ public:)~~~"); typedef class @message.response_type@ ResponseType;)~~~"); message_generator.appendln(R"~~~( - @message.pascal_name@(decltype(nullptr)) : m_ipc_message_valid(false) { } @message.pascal_name@(@message.pascal_name@ const&) = default; @message.pascal_name@(@message.pascal_name@&&) = default; @message.pascal_name@& operator=(@message.pascal_name@ const&) = default; @@ -412,12 +411,8 @@ public:)~~~"); })~~~"); message_generator.appendln(R"~~~( - virtual bool valid() const override { return m_ipc_message_valid; } - virtual ErrorOr encode() const override { - VERIFY(valid()); - IPC::MessageBuffer buffer; IPC::Encoder stream(buffer); TRY(stream.encode(endpoint_magic())); @@ -445,8 +440,7 @@ public:)~~~"); } message_generator.appendln(R"~~~( -private: - bool m_ipc_message_valid { true };)~~~"); +private:)~~~"); for (auto const& parameter : parameters) { auto parameter_generator = message_generator.fork(); @@ -715,8 +709,6 @@ public: message_generator.appendln(R"~~~( [[maybe_unused]] auto& request = static_cast(message); auto response = @handler_name@(@arguments@); - if (!response.valid()) - return Error::from_string_literal("Failed to handle @endpoint.name@::@message.pascal_name@ message"); return make(TRY(response.encode()));)~~~"); } } else {