diff --git a/libguile/ChangeLog b/libguile/ChangeLog index 986fe2aff..57224048d 100644 --- a/libguile/ChangeLog +++ b/libguile/ChangeLog @@ -1,3 +1,10 @@ +Tue May 13 04:34:52 1997 Gary Houston + + * script.c (scm_compile_shell_switches): don't append (quit) if + interactive. + (scm_shell): call scm_exit_status and exit on the result of the + evaluation. + Mon May 12 17:23:58 1997 Jim Blandy Ensure that shared substrings are handled properly when passed to diff --git a/libguile/script.c b/libguile/script.c index 25eabeb93..ef57ff564 100644 --- a/libguile/script.c +++ b/libguile/script.c @@ -761,12 +761,13 @@ scm_compile_shell_switches (int argc, char **argv) tail = scm_cons (scm_cons (sym_load_user_init, SCM_EOL), tail); tail = scm_cons (scm_cons (sym_top_repl, SCM_EOL), tail); } - - /* After doing all the other actions prescribed by the command line, - quit. */ - tail = scm_cons (scm_cons (sym_quit, SCM_EOL), + else + { + /* After doing all the other actions prescribed by the command line, + quit. */ + tail = scm_cons (scm_cons (sym_quit, SCM_EOL), tail); - + } { /* We want a path only containing directories from SCHEME_LOAD_PATH, SCM_SITE_DIR and SCM_LIBRARY_DIR when searching for the site init @@ -813,7 +814,7 @@ scm_shell (argc, argv) } } - scm_eval_x (scm_compile_shell_switches (argc, argv)); + exit (scm_exit_status (scm_eval_x (scm_compile_shell_switches (argc,argv)))); }