diff --git a/shell/hush.c b/shell/hush.c index d5ea3b21f..3a4b5d894 100644 --- a/shell/hush.c +++ b/shell/hush.c @@ -9393,6 +9393,13 @@ int hush_main(int argc, char **argv) # if ENABLE_HUSH_LOOPS optarg++; G.depth_of_loop = bb_strtou(optarg, &optarg, 16); +# endif +# if ENABLE_HUSH_FUNCTIONS + /* nommu uses re-exec trick for "... | func | ...", + * should allow "return". + * This accidentally allows returns in subshells. + */ + G_flag_return_in_progress = -1; # endif break; }