summaryrefslogtreecommitdiff
path: root/libbb/run_shell.c
diff options
context:
space:
mode:
authorRobert Griebl2002-07-19 00:05:54 +0000
committerRobert Griebl2002-07-19 00:05:54 +0000
commitd378c3149c6c24e7788f04a6d20ba360f3ea407e (patch)
tree945ff88bbbde5a32c2b3342b22d801be90ea40f2 /libbb/run_shell.c
parent88947dd05e28a3b793b16dfd6db1b5414ca99017 (diff)
downloadbusybox-d378c3149c6c24e7788f04a6d20ba360f3ea407e.zip
busybox-d378c3149c6c24e7788f04a6d20ba360f3ea407e.tar.gz
Applied vodz' patches #49 and #50 (with a small correction in runshell.c)
#49: I found one memory overflow and memory leak in "ln" applet. Last patch reduced also 54 bytes. ;) #50: I found bug in loginutils/Makefile.in. New patch have also new function to libbb and aplied this to applets and other cosmetic changes.
Diffstat (limited to 'libbb/run_shell.c')
-rw-r--r--libbb/run_shell.c5
1 files changed, 2 insertions, 3 deletions
diff --git a/libbb/run_shell.c b/libbb/run_shell.c
index 30050fe..b26eba1 100644
--- a/libbb/run_shell.c
+++ b/libbb/run_shell.c
@@ -60,9 +60,8 @@ void run_shell ( const char *shell, int loginshell, const char *command, const c
args [0] = get_last_path_component ( xstrdup ( shell ));
if ( loginshell ) {
- char *args0 = xmalloc ( xstrlen ( args [0] ) + 2 );
- args0 [0] = '-';
- strcpy ( args0 + 1, args [0] );
+ char *args0;
+ bb_asprintf ( &args0, "-%s", args [0] );
args [0] = args0;
}