diff --git a/src/main.rs b/src/main.rs index 85ed88f4e616e27b0120230fec1150a68e671d7b..58ecd6386c753b3d56ab4c5f20518dd49eb29151 100644 --- a/src/main.rs +++ b/src/main.rs @@ -36,8 +36,7 @@ use std::thread; fn inner_main(sigint_rx : mpsc::Receiver<i32>) { let builtins = Builtin::map(); - let mut shell = Shell::new(&builtins, sigint_rx); - shell.evaluate_init_file(); + let shell = Shell::new(&builtins, sigint_rx); shell.main(); } diff --git a/src/shell/binary.rs b/src/shell/binary.rs index c667a530ef65f147cb9ea181f86cd5d60d7ab8d5..ef27947168aa192bd9126f79765a57973b41a54e 100644 --- a/src/shell/binary.rs +++ b/src/shell/binary.rs @@ -248,6 +248,8 @@ impl<'a> Binary for Shell<'a> { context }); + self.evaluate_init_file(); + self.variables.set_array ( "args", iter::once(env::args().next().unwrap()).collect(),