servo/components
Simon Wülker 384d8f1ff8
Coalesce animated image frame data into a single shared memory region (#37058)
This makes servo use less file descriptors for animated images and
avoids the crash described in
https://github.com/servo/servo/issues/36792.

Doing this also forces the end users to be more explicit about whether
they want to deal with all image frames or just the first one.
Previously, `Image::bytes` silently returned only the data for the first
frame. With this change there's now a `frames` method which returns an
iterator over all frames in the image.

Testing: No tests - this simply reduces the number of fds used. Servo
doesn't currently display animated gifs anyways.
Fixes: https://github.com/servo/servo/issues/36792

Signed-off-by: Simon Wülker <simon.wuelker@arcor.de>
2025-05-20 20:40:46 +00:00
..
allocator Organize component Cargo.toml dependencies (#36224) 2025-03-30 19:03:54 +00:00
background_hang_monitor Organize component Cargo.toml dependencies (#36224) 2025-03-30 19:03:54 +00:00
bluetooth Replace bluetooth Readme with corrected version from devices repository (#36429) 2025-04-10 18:02:45 +00:00
canvas canvas: Move generic implementations into GenericPathBuilder trait (#36999) 2025-05-14 03:51:56 +00:00
compositing Coalesce animated image frame data into a single shared memory region (#37058) 2025-05-20 20:40:46 +00:00
config Remove the dom_shadowdom_enabled preference (#37043) 2025-05-18 17:42:21 +00:00
constellation Fully support <input type=color> (#36992) 2025-05-15 17:30:38 +00:00
deny_public_fields
devtools DevTools: Improve resource_available to handle multiple connections (#36933) 2025-05-09 12:06:33 +00:00
dom_struct
domobject_derive
fonts fonts: Fix calculation of font underline thickness on macOS (#37029) 2025-05-16 18:23:02 +00:00
geometry
hyper_serde
jstraceable_derive
layout layout: Split stacking context and display list construction (#37047) 2025-05-20 13:42:39 +00:00
malloc_size_of layout: Share styles to inline box children via SharedInlineStyles (#36896) 2025-05-12 09:38:50 +00:00
media compositing: Combine webrender_traits and compositing_traits (#36372) 2025-04-06 17:34:18 +00:00
metrics Move ScriptToConstellationMsg to constellation_traits (#36364) 2025-04-05 22:13:29 +00:00
net Coalesce animated image frame data into a single shared memory region (#37058) 2025-05-20 20:40:46 +00:00
pixels Coalesce animated image frame data into a single shared memory region (#37058) 2025-05-20 20:40:46 +00:00
profile Remove layout-2013 profiling categories (#37014) 2025-05-15 16:54:02 +00:00
rand Migrate to the 2024 edition (#35755) 2025-03-13 10:28:11 +00:00
range
script Coalesce animated image frame data into a single shared memory region (#37058) 2025-05-20 20:40:46 +00:00
script_bindings Stream implement pipeThrough (#36977) 2025-05-20 14:33:22 +00:00
servo Don't build testbinding-related code by default (#37034) 2025-05-17 08:14:19 +00:00
servo_tracing [tracing] Add convenience macro for function tracing (#36573) 2025-04-22 19:58:20 +00:00
shared net: Measure memory usage of storage thread. (#37053) 2025-05-20 14:50:02 +00:00
timers
url Various memory measurement improvements (#36834) 2025-05-07 04:00:12 +00:00
webdriver_server Coalesce animated image frame data into a single shared memory region (#37058) 2025-05-20 20:40:46 +00:00
webgl webgl: Use glow::Context::supported_extensions() to implement getSupportedExtensions() (#36911) 2025-05-08 08:34:52 +00:00
webgpu Introduce snapshot concept of canvas (#36119) 2025-04-23 07:32:47 +00:00
webxr libservo: Expose a ServoBuilder (#36549) 2025-04-16 16:58:52 +00:00