aboutsummaryrefslogtreecommitdiffstats
path: root/src/run/builtin.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/run/builtin.rs')
-rw-r--r--src/run/builtin.rs12
1 files changed, 9 insertions, 3 deletions
diff --git a/src/run/builtin.rs b/src/run/builtin.rs
index 3f89ebb..0f90e51 100644
--- a/src/run/builtin.rs
+++ b/src/run/builtin.rs
@@ -41,9 +41,15 @@ impl Builtin for re {
fn mod_session(&self, session: &mut Session, _args: &[BString]) {
session.raw.disable();
- let _ = Command::new("cargo").arg("run").status();
- session.raw.disable();
- std::process::exit(0);
+ match Command::new("cargo").arg("build").status() {
+ Ok(status) if status.success() => {
+ let _ = Command::new("cargo").arg("run").status();
+ session.raw.disable();
+ std::process::exit(0);
+ }
+ _ => (),
+ }
+ session.raw.enable();
}
}