From e5dfced23a904d08afa5dcee190c3c3d845d9f50 Mon Sep 17 00:00:00 2001 From: Eric Andersen Date: Mon, 9 Apr 2001 22:48:12 +0000 Subject: Apply Vladimir's latest cleanup patch. -Erik --- applets/busybox.c | 23 ++++++++++++++++------- 1 file changed, 16 insertions(+), 7 deletions(-) (limited to 'applets/busybox.c') diff --git a/applets/busybox.c b/applets/busybox.c index 5085556d6..9db26df27 100644 --- a/applets/busybox.c +++ b/applets/busybox.c @@ -10,6 +10,10 @@ #define BB_DECLARE_EXTERN #include "messages.c" +#ifdef BB_LOCALE_SUPPORT +#include +#endif + int been_there_done_that = 0; /* Also used in applets.c */ const char *applet_name; @@ -60,7 +64,7 @@ static void install_links(const char *busybox, int use_symbolic_links) { __link_f Link = link; - char command[256]; + char *fpc; int i; int rc; @@ -68,13 +72,13 @@ static void install_links(const char *busybox, int use_symbolic_links) Link = symlink; for (i = 0; applets[i].name != NULL; i++) { - sprintf ( command, "%s/%s", - install_dir[applets[i].location], applets[i].name); - rc = Link(busybox, command); - - if (rc) { - perror_msg("%s", command); + fpc = concat_path_file( + install_dir[applets[i].location], applets[i].name); + rc = Link(busybox, fpc); + if (rc!=0 && errno!=EEXIST) { + perror_msg("%s", fpc); } + free(fpc); } } @@ -97,6 +101,11 @@ int main(int argc, char **argv) } #endif +#ifdef BB_LOCALE_SUPPORT + if(getpid()!=1) /* Do not set locale for `init' */ + setlocale(LC_ALL, ""); +#endif + run_applet_by_name(applet_name, argc, argv); error_msg_and_die("applet not found"); } -- cgit v1.2.3