From 9688654f7116490ffcdbc7edab962d990f3ae167 Mon Sep 17 00:00:00 2001 From: Claude Date: Sat, 21 Mar 2026 06:10:49 +0000 Subject: [PATCH] Fix interactive shell exiting on parser errors Parser errors returned ExecuteResult::Exit which caused the interactive loop to call std::process::exit(). Changed to ExecuteResult::Continue so the shell shows the error and returns to the prompt instead of exiting. https://claude.ai/code/session_01FWuvp3gzrVXafUFScojkFZ --- crates/shell/src/execute.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/crates/shell/src/execute.rs b/crates/shell/src/execute.rs index 2bd79c5..15ee36d 100644 --- a/crates/shell/src/execute.rs +++ b/crates/shell/src/execute.rs @@ -22,7 +22,7 @@ pub async fn execute_inner( stderr.write_all(format!("Filename: {:?}\n", filename).as_bytes())?; } stderr.write_all(format!("Syntax error: {:?}", e).as_bytes())?; - return Ok(ExecuteResult::Exit(1, vec![], vec![])); + return Ok(ExecuteResult::Continue(1, vec![], vec![])); } };