diff options
author | Bernhard Reutner-Fischer | 2009-10-26 23:27:07 +0100 |
---|---|---|
committer | Denys Vlasenko | 2009-10-27 17:14:49 +0100 |
commit | ca254490d703c750390042c9afa21d1537c90e9a (patch) | |
tree | b63673369b01cd5f9c64c4b538ab452bb740dbfa /runit/chpst.c | |
parent | b04f058e769dac576e2ec090d8c6e6f63c6cb52f (diff) | |
download | busybox-ca254490d703c750390042c9afa21d1537c90e9a.zip busybox-ca254490d703c750390042c9afa21d1537c90e9a.tar.gz |
chpst: tiny shrinkage and add possible TODO
text data bss dec hex filename
1398 0 0 1398 576 runit/chpst.o.old
1385 0 0 1385 569 runit/chpst.o
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Diffstat (limited to 'runit/chpst.c')
-rw-r--r-- | runit/chpst.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/runit/chpst.c b/runit/chpst.c index 270ec0a..082d726 100644 --- a/runit/chpst.c +++ b/runit/chpst.c @@ -92,6 +92,7 @@ enum { OPT_2 = (1 << 20) * ENABLE_CHPST, }; +/* TODO: use recursive_action? */ static NOINLINE void edir(const char *directory_name) { int wdir; @@ -101,11 +102,9 @@ static NOINLINE void edir(const char *directory_name) wdir = xopen(".", O_RDONLY | O_NDELAY); xchdir(directory_name); - dir = opendir("."); - if (!dir) - bb_perror_msg_and_die("opendir %s", directory_name); + dir = xopendir("."); for (;;) { - char buf[256]; + RESERVE_CONFIG_BUFFER(buf, 256); char *tail; int size; @@ -149,6 +148,7 @@ static NOINLINE void edir(const char *directory_name) break; } xsetenv(d->d_name, buf); + RELEASE_CONFIG_BUFFER(buf); } closedir(dir); if (fchdir(wdir) == -1) |