diff options
author | Andreas Kling <kling@serenityos.org> | 2021-11-29 17:12:55 +0100 |
---|---|---|
committer | Andreas Kling <kling@serenityos.org> | 2021-11-30 23:34:40 +0100 |
commit | 314a687eeb2193ffa32bb21b41b28d2ba1854160 (patch) | |
tree | 7dfcccc6f24992cf96c41303742f5a1baadbe195 /Userland/Services | |
parent | 8c8bf9433f95e5ec18c559a52220a07c42700fdf (diff) | |
download | serenity-314a687eeb2193ffa32bb21b41b28d2ba1854160.zip |
ImageDecoder: Remove unnecessary client map
ImageDecoder processes only serve a single client, so we don't need to
keep a map of them.
Diffstat (limited to 'Userland/Services')
-rw-r--r-- | Userland/Services/ImageDecoder/ClientConnection.cpp | 10 | ||||
-rw-r--r-- | Userland/Services/ImageDecoder/ClientConnection.h | 2 | ||||
-rw-r--r-- | Userland/Services/ImageDecoder/main.cpp | 2 |
3 files changed, 5 insertions, 9 deletions
diff --git a/Userland/Services/ImageDecoder/ClientConnection.cpp b/Userland/Services/ImageDecoder/ClientConnection.cpp index 2522d7bba1..6b8ec20faf 100644 --- a/Userland/Services/ImageDecoder/ClientConnection.cpp +++ b/Userland/Services/ImageDecoder/ClientConnection.cpp @@ -12,12 +12,9 @@ namespace ImageDecoder { -static HashMap<int, RefPtr<ClientConnection>> s_connections; - -ClientConnection::ClientConnection(NonnullRefPtr<Core::LocalSocket> socket, int client_id) - : IPC::ClientConnection<ImageDecoderClientEndpoint, ImageDecoderServerEndpoint>(*this, move(socket), client_id) +ClientConnection::ClientConnection(NonnullRefPtr<Core::LocalSocket> socket) + : IPC::ClientConnection<ImageDecoderClientEndpoint, ImageDecoderServerEndpoint>(*this, move(socket), 1) { - s_connections.set(client_id, *this); } ClientConnection::~ClientConnection() @@ -26,8 +23,7 @@ ClientConnection::~ClientConnection() void ClientConnection::die() { - s_connections.remove(client_id()); - exit(0); + Core::EventLoop::current().quit(0); } Messages::ImageDecoderServer::DecodeImageResponse ClientConnection::decode_image(Core::AnonymousBuffer const& encoded_buffer) diff --git a/Userland/Services/ImageDecoder/ClientConnection.h b/Userland/Services/ImageDecoder/ClientConnection.h index 3c1efc7512..01cb037c7a 100644 --- a/Userland/Services/ImageDecoder/ClientConnection.h +++ b/Userland/Services/ImageDecoder/ClientConnection.h @@ -25,7 +25,7 @@ public: virtual void die() override; private: - explicit ClientConnection(NonnullRefPtr<Core::LocalSocket>, int client_id); + explicit ClientConnection(NonnullRefPtr<Core::LocalSocket>); virtual Messages::ImageDecoderServer::DecodeImageResponse decode_image(Core::AnonymousBuffer const&) override; }; diff --git a/Userland/Services/ImageDecoder/main.cpp b/Userland/Services/ImageDecoder/main.cpp index 7af4cbacc7..a273ce20ae 100644 --- a/Userland/Services/ImageDecoder/main.cpp +++ b/Userland/Services/ImageDecoder/main.cpp @@ -18,7 +18,7 @@ ErrorOr<int> serenity_main(Main::Arguments) TRY(Core::System::unveil(nullptr, nullptr)); auto socket = TRY(Core::LocalSocket::take_over_accepted_socket_from_system_server()); - IPC::new_client_connection<ImageDecoder::ClientConnection>(move(socket), 1); + auto client = IPC::new_client_connection<ImageDecoder::ClientConnection>(move(socket)); TRY(Core::System::pledge("stdio recvfd sendfd")); return event_loop.exec(); } |