Description: patch image decoders
 Decoders requires the data passed to implement 'Seek'.
Author: Ananthu C V <weepingclown@debian.org>
Forwarded: not-needed
Last-Update: 2024-12-14
--- a/src/image.rs
+++ b/src/image.rs
@@ -390,3 +390,3 @@
                 match format {
-                    ImageFormat::Gif => image::codecs::gif::GifDecoder::new(&*data)
+                    ImageFormat::Gif => image::codecs::gif::GifDecoder::new(std::io::Cursor::new(&data))
                         .and_then(|decoder| decoder.into_frames().collect_frames())
@@ -408,3 +408,3 @@
                     ImageFormat::Png => {
-                        let decoder = match image::codecs::png::PngDecoder::new(&*data) {
+                        let decoder = match image::codecs::png::PngDecoder::new(std::io::Cursor::new(&data)) {
                             Ok(d) => d,
@@ -412,4 +412,4 @@
                         };
-                        if decoder.is_apng() {
-                            match decoder.apng().into_frames().collect_frames() {
+                        if decoder.is_apng().unwrap() {
+                            match decoder.apng().unwrap().into_frames().collect_frames() {
                                 Ok(frames) if frames.is_empty() => {
@@ -426,3 +426,3 @@
                     ImageFormat::WebP => {
-                        let decoder = match image::codecs::webp::WebPDecoder::new(&*data) {
+                        let decoder = match image::codecs::webp::WebPDecoder::new(std::io::Cursor::new(&data)) {
                             Ok(d) => d,
