The default behaviour for run-parts is corrected to continue if an error
authorGlenn L McGrath <bug1@ihug.co.nz>
Sat, 30 Aug 2003 12:27:36 +0000 (12:27 -0000)
committerGlenn L McGrath <bug1@ihug.co.nz>
Sat, 30 Aug 2003 12:27:36 +0000 (12:27 -0000)
is encountered in a script.
Patch by Philip Blundell

libbb/run_parts.c

index 171d937..0eb7660 100644 (file)
@@ -80,7 +80,7 @@ extern int run_parts(char **args, const unsigned char test_mode, char **env)
                        bb_perror_msg_and_die("failed to stat component %s", filename);
                }
                if (S_ISREG(st.st_mode) && !access(filename, X_OK)) {
-                       if (test_mode & 1) {
+                       if (test_mode) {
                                puts(filename);
                        } else {
                                /* exec_errno is common vfork variable */
@@ -100,7 +100,8 @@ extern int run_parts(char **args, const unsigned char test_mode, char **env)
                                waitpid(pid, &result, 0);
                                if(exec_errno) {
                                        errno = exec_errno;
-                                       bb_perror_msg_and_die("failed to exec %s", filename);
+                                       bb_perror_msg("failed to exec %s", filename);
+                                       exitstatus = 1;
                                }
                                if (WIFEXITED(result) && WEXITSTATUS(result)) {
                                        bb_perror_msg("%s exited with return code %d", filename, WEXITSTATUS(result));