ladybird/Userland/Services/ImageDecoder
Andreas Kling 166e603c5e ImageDecoder: Pass decoded images as Gfx::Bitmap over IPC
Before this change, we were passing them as Gfx::ShareableBitmap. The
problem is that shareable bitmaps keep their underlying file descriptor
open, so that they can be shared again with someone else.

When a Gfx::Bitmap is decoded from an IPC message, the file descriptor
is closed and recovered immediately.

This fixes an issue where we'd accumulate one file descriptor for every
image decoded. This eventually led to descriptor starvation after enough
images were loaded and still referenced at the same time.
2024-07-18 09:05:10 +02:00
..
CMakeLists.txt Meta+CMake: Remove unused CMake functions and features 2024-06-05 12:23:54 -04:00
ConnectionFromClient.cpp ImageDecoder: Pass decoded images as Gfx::Bitmap over IPC 2024-07-18 09:05:10 +02:00
ConnectionFromClient.h ImageDecoder: Pass decoded images as Gfx::Bitmap over IPC 2024-07-18 09:05:10 +02:00
Forward.h Userland: Rename IPC ClientConnection => ConnectionFromClient 2022-02-25 22:35:12 +01:00
ImageDecoderClient.ipc ImageDecoder: Pass decoded images as Gfx::Bitmap over IPC 2024-07-18 09:05:10 +02:00
ImageDecoderServer.ipc Everywhere: Transition ImageDecoder to be single-instance, owned by UI 2024-06-26 16:09:33 -06:00
main.cpp ImageDecoder: Add the 'thread' pledge for background actions 2024-04-26 09:29:02 -04:00