servo/components/net
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
..
fetch Use spec compliant content-type extraction in more places and enable a <stylesheet> quirk (#28321) 2025-05-19 11:38:01 +00:00
protocols Initial support for marking custom protocol secure (#36656) 2025-04-25 10:39:33 +00:00
tests Replace hsts preload list hashmap with an FST (#37015) 2025-05-20 04:26:55 +00:00
async_runtime.rs Remove lock around tokio-rt handle (#36762) 2025-04-30 07:09:38 +00:00
Cargo.toml Replace hsts preload list hashmap with an FST (#37015) 2025-05-20 04:26:55 +00:00
connector.rs Remove lock around tokio-rt handle (#36762) 2025-04-30 07:09:38 +00:00
cookie.rs Update rustfmt to the 2024 style edition (#35764) 2025-03-03 11:26:53 +00:00
cookie_storage.rs Webdriver delete cookie (#36306) 2025-04-04 05:24:47 +00:00
decoder.rs Update rustfmt to the 2024 style edition (#35764) 2025-03-03 11:26:53 +00:00
filemanager_thread.rs servoshell: Migrate to egui-file-dialog from tinyfiledialogs (#34823) 2025-02-04 18:24:24 +00:00
hosts.rs Replace the lazy_static crate with std::sync::LazyLock in components/net (#33046) 2024-08-14 12:15:55 +00:00
hsts.rs Replace hsts preload list hashmap with an FST (#37015) 2025-05-20 04:26:55 +00:00
http_cache.rs Update rustfmt to the 2024 style edition (#35764) 2025-03-03 11:26:53 +00:00
http_loader.rs fix: ReadableStream::get_in_memory_bytes too large (#36914) 2025-05-12 16:00:14 +00:00
image_cache.rs Coalesce animated image frame data into a single shared memory region (#37058) 2025-05-20 20:40:46 +00:00
lib.rs libservo: Convert intercept_web_resource_load into load_web_resource (#35564) 2025-02-21 14:36:42 +00:00
local_directory_listing.rs Update rustfmt to the 2024 style edition (#35764) 2025-03-03 11:26:53 +00:00
mime_classifier.rs Update to rust 1.85 (#35628) 2025-02-24 17:44:35 +00:00
request_interceptor.rs Update rustfmt to the 2024 style edition (#35764) 2025-03-03 11:26:53 +00:00
resource_thread.rs net: Measure memory usage of storage thread. (#37053) 2025-05-20 14:50:02 +00:00
storage_thread.rs net: Measure memory usage of storage thread. (#37053) 2025-05-20 14:50:02 +00:00
subresource_integrity.rs clippy: Fix warnings in components/net (#31626) 2024-03-13 09:40:04 +00:00
websocket_loader.rs Remove lock around tokio-rt handle (#36762) 2025-04-30 07:09:38 +00:00