aboutsummaryrefslogtreecommitdiff
path: root/coreutils
diff options
context:
space:
mode:
authorPascal Bellard <pascal.bellard@ads-lu.com>2010-07-04 00:57:03 +0200
committerDenys Vlasenko <vda.linux@googlemail.com>2010-07-04 00:57:03 +0200
commit21e8e8da6483c80a6054b06e48341968a7dccdd5 (patch)
tree9980dc076107930f9706733c7cbedcf0e4099877 /coreutils
parent7c1b2b5420d4208864b8bc6e07e90792aed94981 (diff)
downloadbusybox-w32-21e8e8da6483c80a6054b06e48341968a7dccdd5.tar.gz
busybox-w32-21e8e8da6483c80a6054b06e48341968a7dccdd5.tar.bz2
busybox-w32-21e8e8da6483c80a6054b06e48341968a7dccdd5.zip
libbb: introduce and use BB_EXECVP_or_die()
function old new delta BB_EXECVP_or_die - 47 +47 time_main 1042 1043 +1 chrt_main 371 364 -7 ionice_main 292 282 -10 setsid_main 69 56 -13 nohup_main 236 223 -13 cttyhack_main 266 253 -13 chroot_main 94 81 -13 chpst_main 746 733 -13 timeout_main 297 279 -18 taskset_main 541 522 -19 vfork_child 67 45 -22 parse 975 953 -22 lpd_main 770 748 -22 launch_helper 192 170 -22 tcpudpsvd_main 1810 1782 -28 nice_main 190 156 -34 env_main 242 206 -36 run_command 221 174 -47 ------------------------------------------------------------------------------ (add/remove: 1/0 grow/shrink: 1/17 up/down: 48/-352) Total: -304 bytes Signed-off-by: Pascal Bellard <pascal.bellard@ads-lu.com> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Diffstat (limited to 'coreutils')
-rw-r--r--coreutils/chroot.c3
-rw-r--r--coreutils/env.c5
-rw-r--r--coreutils/nice.c5
-rw-r--r--coreutils/nohup.c3
4 files changed, 4 insertions, 12 deletions
diff --git a/coreutils/chroot.c b/coreutils/chroot.c
index bc0b1f82c..046c2fabf 100644
--- a/coreutils/chroot.c
+++ b/coreutils/chroot.c
@@ -30,6 +30,5 @@ int chroot_main(int argc UNUSED_PARAM, char **argv)
30 argv[1] = (char *) "-i"; 30 argv[1] = (char *) "-i";
31 } 31 }
32 32
33 BB_EXECVP(argv[0], argv); 33 BB_EXECVP_or_die(argv);
34 bb_perror_msg_and_die("can't execute '%s'", argv[0]);
35} 34}
diff --git a/coreutils/env.c b/coreutils/env.c
index c6ba04d35..d4eab191b 100644
--- a/coreutils/env.c
+++ b/coreutils/env.c
@@ -77,10 +77,7 @@ int env_main(int argc UNUSED_PARAM, char **argv)
77 } 77 }
78 78
79 if (argv[0]) { 79 if (argv[0]) {
80 BB_EXECVP(argv[0], argv); 80 BB_EXECVP_or_die(argv);
81 /* SUSv3-mandated exit codes. */
82 xfunc_error_retval = (errno == ENOENT) ? 127 : 126;
83 bb_perror_msg_and_die("can't execute '%s'", argv[0]);
84 } 81 }
85 82
86 if (environ) { /* clearenv() may set environ == NULL! */ 83 if (environ) { /* clearenv() may set environ == NULL! */
diff --git a/coreutils/nice.c b/coreutils/nice.c
index 0f70f1079..ff3eb1140 100644
--- a/coreutils/nice.c
+++ b/coreutils/nice.c
@@ -47,8 +47,5 @@ int nice_main(int argc, char **argv)
47 } 47 }
48 } 48 }
49 49
50 BB_EXECVP(argv[0], argv); 50 BB_EXECVP_or_die(argv);
51 /* The exec failed... */
52 xfunc_error_retval = (errno == ENOENT) ? 127 : 126; /* SUSv3 */
53 bb_perror_msg_and_die("can't execute '%s'", argv[0]);
54} 51}
diff --git a/coreutils/nohup.c b/coreutils/nohup.c
index 1027ada1c..3dc531409 100644
--- a/coreutils/nohup.c
+++ b/coreutils/nohup.c
@@ -76,6 +76,5 @@ int nohup_main(int argc UNUSED_PARAM, char **argv)
76 signal(SIGHUP, SIG_IGN); 76 signal(SIGHUP, SIG_IGN);
77 77
78 argv++; 78 argv++;
79 BB_EXECVP(argv[0], argv); 79 BB_EXECVP_or_die(argv);
80 bb_perror_msg_and_die("can't execute '%s'", argv[0]);
81} 80}