← Commit list

68d5cb5da

Denys Vlasenko
Denys Vlasenko
2011-03-24
FAILED Duration: 212s

Subject

hush: fix a case where return in sourced file has no effect

Binary

No binary (build failed)

Architecture & Compiler Flags

Architecture: x86_64-linux-gnu Compiler: gcc (Ubuntu 11.4.0-1ubuntu1~22.04.3) 11.4.0

—

Build Log

(log yok)

Commit Diff GitHub →

shell/hush.c+4 -0
@@ -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
}
}
shell/hush_test/hush-misc/return1.right+1 -0
@@ -0,0 +1 @@
+Ok:0
shell/hush_test/hush-misc/return1.tests+4 -0
@@ -0,0 +1,4 @@
+echo "true && return; echo Should not be printed" >return_sourced
+. ./return_sourced
+rm return_sourced
+echo Ok:$?