Compositor: Terminate immediately on client disconnect

Keep notifying connected WebContent clients that the compositor is
gone, but terminate the Compositor process without running exit-time
destructors after the controlling client disconnects.
This commit is contained in:
Andreas Kling 2026-06-04 10:41:30 +02:00 committed by Andreas Kling
parent 83a69706de
commit d1d9d14dc5

View file

@ -7,7 +7,7 @@
#include <AK/IDAllocator.h>
#include <Compositor/ConnectionFromClient.h>
#include <Compositor/ConnectionFromWebContent.h>
#include <LibCore/EventLoop.h>
#include <LibCore/Process.h>
#include <LibCore/System.h>
#include <LibIPC/Transport.h>
@ -26,7 +26,7 @@ void ConnectionFromClient::die()
{
for (auto& [id, connection] : m_web_content_connections)
connection->notify_compositor_lost();
Core::EventLoop::current().quit(0);
Core::Process::terminate_immediately(0);
}
void ConnectionFromClient::did_allocate_backing_stores(Web::Compositor::CompositorContextId context_id, i32 front_bitmap_id, Gfx::SharedImage&& front_backing_store, i32 back_bitmap_id, Gfx::SharedImage&& back_backing_store)