diff options
Diffstat (limited to 'src/runner/mod.rs')
-rw-r--r-- | src/runner/mod.rs | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/src/runner/mod.rs b/src/runner/mod.rs index a2db255..21ed9c9 100644 --- a/src/runner/mod.rs +++ b/src/runner/mod.rs @@ -79,7 +79,7 @@ pub async fn main() -> anyhow::Result<i32> { let (commands, mut env) = read_data(shell_read).await?; run_commands(&commands, &mut env, &shell_write).await?; - let status = *env.latest_status(); + let status = env.latest_status(); write_event(&shell_write, Event::Exit(env)).await?; if let Some(signal) = status.signal() { @@ -216,7 +216,8 @@ async fn run_pipeline( let (children, pg) = spawn_children(pipeline, env, &io)?; let status = wait_children(children, pg, env, &io, shell_write).await; set_foreground_pg(nix::unistd::getpid())?; - env.update(status)?; + env.update()?; + env.set_status(status); Ok(()) } |