From 3c18ba5b58f4239054e809b07d795308f75b8602 Mon Sep 17 00:00:00 2001 From: Jesse Luehrs Date: Mon, 10 Jan 2022 22:19:22 -0500 Subject: implement globbing --- src/runner/mod.rs | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'src/runner') diff --git a/src/runner/mod.rs b/src/runner/mod.rs index 6d080b8..86fb1b4 100644 --- a/src/runner/mod.rs +++ b/src/runner/mod.rs @@ -143,7 +143,10 @@ async fn run_commands( if stack.should_execute() { list.clone() .into_iter() - .flat_map(|w| w.eval(env)) + .map(|w| w.eval(env).map(IntoIterator::into_iter)) + .collect::>, _>>()? + .into_iter() + .flatten() .collect() } else { vec![] @@ -240,7 +243,7 @@ fn spawn_children<'a>( env: &'a Env, io: &builtins::Io, ) -> anyhow::Result<(Vec>, Option)> { - let pipeline = pipeline.eval(env); + let pipeline = pipeline.eval(env)?; let mut cmds: Vec<_> = pipeline .into_exes() .map(|exe| Command::new(exe, io.clone())) -- cgit v1.2.3-54-g00ecf