allow also apng, case-insensitive

This commit is contained in:
LuckyTurtleDev 2023-09-22 19:20:46 +02:00
parent 92b43d97c2
commit 1e3f007daf

View file

@ -26,6 +26,7 @@ use oxipng::StripChunks;
use oxipng::{InFile, OutFile}; use oxipng::{InFile, OutFile};
use rayon::prelude::*; use rayon::prelude::*;
use std::ffi::OsStr; use std::ffi::OsStr;
use std::ffi::OsString;
use std::fs::DirBuilder; use std::fs::DirBuilder;
use std::io::Write; use std::io::Write;
#[cfg(feature = "zopfli")] #[cfg(feature = "zopfli")]
@ -401,8 +402,12 @@ fn collect_files(
InFile::StdIn InFile::StdIn
} else { } else {
//skip non png files if recusive flag is used. //skip non png files if recusive flag is used.
//(still allow the user to convert a non png file if recusive flag is not used) //(still allow the user to convert a non png file if recusive flag is not used);
if Some(OsStr::new("png")) != input.extension() && recursive && !include_non_png { if recursive && !include_non_png && {
let extension = input.extension().map(|f| f.to_ascii_lowercase());
extension != Some(OsString::from("png"))
&& extension != Some(OsString::from("apng"))
} {
continue; continue;
} }
InFile::Path(input) InFile::Path(input)