diff options
Diffstat (limited to 'src/meta/mod.rs')
-rw-r--r-- | src/meta/mod.rs | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/src/meta/mod.rs b/src/meta/mod.rs index 85cd348..6f77282 100644 --- a/src/meta/mod.rs +++ b/src/meta/mod.rs @@ -58,11 +58,13 @@ impl Meta { _ => return Ok(None), } - // TODO: Don't read_dir twice; see later. - if let Err(err) = self.path.read_dir() { - eprintln!("cannot access '{}': {}", self.path.display(), err); - return Ok(None); - } + let entries = match self.path.read_dir() { + Ok(entries) => entries, + Err(err) => { + eprintln!("cannot access '{}': {}", self.path.display(), err); + return Ok(None); + } + }; let mut content: Vec<Meta> = Vec::new(); @@ -85,7 +87,7 @@ impl Meta { content.push(parent_meta); } - for entry in self.path.read_dir()? { + for entry in entries { let path = entry?.path(); if let Display::DisplayOnlyVisible = display { |