summaryrefslogtreecommitdiffstats
path: root/src/runner/mod.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/runner/mod.rs')
-rw-r--r--src/runner/mod.rs5
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(())
}