diff options
author | Denys Vlasenko <vda.linux@googlemail.com> | 2011-03-24 02:50:03 +0100 |
---|---|---|
committer | Denys Vlasenko <vda.linux@googlemail.com> | 2011-03-24 02:50:03 +0100 |
commit | 68d5cb5dacbc80347119ac9cff365e5f04105ef1 (patch) | |
tree | 0131cb18f76a4e366a17de7c34882f07c5550557 /shell/hush.c | |
parent | 20704f066250744c0c2b84920c27d0fd0aa9e935 (diff) |
hush: fix a case where return in sourced file has no effect
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Diffstat (limited to 'shell/hush.c')
-rw-r--r-- | shell/hush.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/shell/hush.c b/shell/hush.c index 339f3349a..8154ac47b 100644 --- a/shell/hush.c +++ b/shell/hush.c @@ -5554,6 +5554,10 @@ static void parse_and_run_stream(struct in_str *inp, int end_trigger) debug_printf_exec("parse_and_run_stream: run_and_free_list\n"); run_and_free_list(pipe_list); empty = 0; +#if ENABLE_HUSH_FUNCTIONS + if (G.flag_return_in_progress == 1) + break; +#endif } } |