summaryrefslogtreecommitdiff
path: root/debianutils/run_parts.c
diff options
context:
space:
mode:
authorDenis Vlasenko2008-06-15 05:40:56 +0000
committerDenis Vlasenko2008-06-15 05:40:56 +0000
commitd50dda8c3501af9d593cd11272a15b480864a01c (patch)
tree652da97787e8e86f876b647ca9dab4b6b64fe291 /debianutils/run_parts.c
parent873b895d50d69a45b52bef85a8a4fb190f9c89ce (diff)
downloadbusybox-d50dda8c3501af9d593cd11272a15b480864a01c.zip
busybox-d50dda8c3501af9d593cd11272a15b480864a01c.tar.gz
*: use llist_pop for traverse-and-free list operation
function old new delta append_file_list_to_list 109 111 +2 udhcpc_main 2414 2413 -1 run_parts_main 325 324 -1 od_main 2324 2323 -1 getopt_main 709 707 -2 env_main 253 251 -2 sed_main 659 656 -3 ps_main 522 519 -3 traceroute_main 3960 3954 -6 sort_main 844 838 -6 diff_main 866 858 -8 ------------------------------------------------------------------------------ (add/remove: 0/0 grow/shrink: 1/10 up/down: 2/-33) Total: -31 bytes
Diffstat (limited to 'debianutils/run_parts.c')
-rw-r--r--debianutils/run_parts.c6
1 files changed, 2 insertions, 4 deletions
diff --git a/debianutils/run_parts.c b/debianutils/run_parts.c
index 47eda8c..c9b0907 100644
--- a/debianutils/run_parts.c
+++ b/debianutils/run_parts.c
@@ -42,7 +42,7 @@ struct globals {
#define cur (G.cur )
#define cmd (G.cmd )
-enum { NUM_CMD = (COMMON_BUFSIZE - sizeof(struct globals)) / sizeof(cmd[0]) };
+enum { NUM_CMD = (COMMON_BUFSIZE - sizeof(G)) / sizeof(cmd[0]) - 1 };
enum {
OPT_r = (1 << 0),
@@ -130,9 +130,7 @@ int run_parts_main(int argc ATTRIBUTE_UNUSED, char **argv)
n = 1;
while (arg_list && n < NUM_CMD) {
- cmd[n] = arg_list->data;
- arg_list = arg_list->link;
- n++;
+ cmd[n++] = llist_pop(&arg_list);
}
/* cmd[n] = NULL; - is already zeroed out */