From 1ddab42edb1c244b57ecb307e2fe54741a56aa0a Mon Sep 17 00:00:00 2001 From: Andrew Date: Thu, 28 Mar 2024 18:20:27 +1300 Subject: [PATCH] Always fix palette even if it would be larger --- src/reduction/palette.rs | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/reduction/palette.rs b/src/reduction/palette.rs index e7619bc4..150e2526 100644 --- a/src/reduction/palette.rs +++ b/src/reduction/palette.rs @@ -43,8 +43,9 @@ pub fn reduced_palette(png: &PngImage, optimize_alpha: bool) -> Option let data = if did_change { // Reassign data bytes to new indices png.data.iter().map(|b| byte_map[*b as usize]).collect() - } else if condensed.len() < palette.len() { - // Data is unchanged but palette will be truncated + } else if condensed.len() != palette.len() { + // Data is unchanged but palette is different size + // Note the new palette could potentially be larger if the original had a missing entry png.data.clone() } else { // Nothing has changed