Blob Blame History Raw
diff -up bash-4.0-rc1/execute_cmd.c.shell_pipelines_handling bash-4.0-rc1/execute_cmd.c
--- bash-4.0-rc1/execute_cmd.c.shell_pipelines_handling	2009-02-11 12:56:13.000000000 +0100
+++ bash-4.0-rc1/execute_cmd.c	2009-02-11 12:57:20.000000000 +0100
@@ -756,7 +756,7 @@ execute_command_internal (command, async
 	 the presence of a pipeline, and (until Posix changes things), a
 	 pipeline failure should not cause the parent shell to exit on an
 	 unsuccessful return status, even in the presence of errexit.. */
-      if (was_error_trap && ignore_return == 0 && invert == 0 && pipe_in == NO_PIPE && pipe_out == NO_PIPE && exec_result != EXECUTION_SUCCESS)
+      if (was_error_trap && ignore_return == 0 && invert == 0 && exec_result != EXECUTION_SUCCESS)
 	{
 	  last_command_exit_value = exec_result;
 	  run_error_trap ();
@@ -764,7 +764,7 @@ execute_command_internal (command, async
 
       if (ignore_return == 0 && invert == 0 &&
 	  ((posixly_correct && interactive == 0 && special_builtin_failed) ||
-	   (exit_immediately_on_error && pipe_in == NO_PIPE && pipe_out == NO_PIPE && exec_result != EXECUTION_SUCCESS)))
+	   (exit_immediately_on_error && exec_result != EXECUTION_SUCCESS)))
 	{
 	  last_command_exit_value = exec_result;
 	  run_pending_traps ();