aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGlenn L McGrath <bug1@ihug.co.nz>2002-11-21 22:17:11 +0000
committerGlenn L McGrath <bug1@ihug.co.nz>2002-11-21 22:17:11 +0000
commit157fea5960e753cae5744457e98cdcbfa17358c4 (patch)
treea5283e7e3560b1f1b4b721eccec1a0b25943be67
parent82701e4d678aa4242befe5d6073548bc29ddb10f (diff)
downloadbusybox-w32-157fea5960e753cae5744457e98cdcbfa17358c4.tar.gz
busybox-w32-157fea5960e753cae5744457e98cdcbfa17358c4.tar.bz2
busybox-w32-157fea5960e753cae5744457e98cdcbfa17358c4.zip
Fix a vfork bug, by Nick Fedchik and Vladimir N. Oleynik
-rw-r--r--libbb/run_parts.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/libbb/run_parts.c b/libbb/run_parts.c
index 8399a6afb..6df51a14e 100644
--- a/libbb/run_parts.c
+++ b/libbb/run_parts.c
@@ -50,6 +50,7 @@ extern int run_parts(char **args, const unsigned char test_mode)
50 struct dirent **namelist = 0; 50 struct dirent **namelist = 0;
51 struct stat st; 51 struct stat st;
52 char *filename; 52 char *filename;
53 char *arg0 = args[0];
53 int entries; 54 int entries;
54 int i; 55 int i;
55 int exitstatus = 0; 56 int exitstatus = 0;
@@ -60,15 +61,15 @@ extern int run_parts(char **args, const unsigned char test_mode)
60 (void) &exitstatus; 61 (void) &exitstatus;
61#endif 62#endif
62 /* scandir() isn't POSIX, but it makes things easy. */ 63 /* scandir() isn't POSIX, but it makes things easy. */
63 entries = scandir(args[0], &namelist, valid_name, alphasort); 64 entries = scandir(arg0, &namelist, valid_name, alphasort);
64 65
65 if (entries == -1) { 66 if (entries == -1) {
66 perror_msg_and_die("failed to open directory %s", args[0]); 67 perror_msg_and_die("failed to open directory %s", arg0);
67 } 68 }
68 69
69 for (i = 0; i < entries; i++) { 70 for (i = 0; i < entries; i++) {
70 71
71 filename = concat_path_file(args[0], namelist[i]->d_name); 72 filename = concat_path_file(arg0, namelist[i]->d_name);
72 73
73 if (stat(filename, &st) < 0) { 74 if (stat(filename, &st) < 0) {
74 perror_msg_and_die("failed to stat component %s", filename); 75 perror_msg_and_die("failed to stat component %s", filename);