From f0b58bcf217454458057f6d0fa1e2906ce309201 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Orhun=20Parmaks=C4=B1z?= Date: Sat, 18 Dec 2021 23:53:59 +0300 Subject: [PATCH] fix(parser): filter out empty file names while checking --- systeroid-parser/src/parser.rs | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/systeroid-parser/src/parser.rs b/systeroid-parser/src/parser.rs index 73ed369..6f890f0 100644 --- a/systeroid-parser/src/parser.rs +++ b/systeroid-parser/src/parser.rs @@ -48,13 +48,16 @@ impl<'a> Parser<'a> { if glob_files.is_empty() { return Err(Error::EmptyFileListError); } - self.required_files.iter().try_for_each(|file_name| { - glob_files - .iter() - .find(|file| file.file_name().to_str() == Some(file_name)) - .map(drop) - .ok_or_else(|| Error::MissingFileError(file_name.to_string())) - })?; + self.required_files + .iter() + .filter(|file_name| !file_name.is_empty()) + .try_for_each(|file_name| { + glob_files + .iter() + .find(|file| file.file_name().to_str() == Some(file_name)) + .map(drop) + .ok_or_else(|| Error::MissingFileError(file_name.to_string())) + })?; for file in glob_files { let input = if file.path().extension().and_then(|ext| ext.to_str()) == Some("gz") { reader::read_gzip(file.path())?