diff --git a/crates/bevy_render/src/texture/image.rs b/crates/bevy_render/src/texture/image.rs index 9df55dbf0a..577fc33780 100644 --- a/crates/bevy_render/src/texture/image.rs +++ b/crates/bevy_render/src/texture/image.rs @@ -381,7 +381,10 @@ impl Image { let image_crate_format = format.as_image_crate_format().ok_or_else(|| { TextureError::UnsupportedTextureFormat(format!("{:?}", format)) })?; - let dyn_img = image::load_from_memory_with_format(buffer, image_crate_format)?; + let mut reader = image::io::Reader::new(std::io::Cursor::new(buffer)); + reader.set_format(image_crate_format); + reader.no_limits(); + let dyn_img = reader.decode()?; Ok(image_to_texture(dyn_img, is_srgb)) } }