summary refs log tree commit diff
path: root/src/main.c
diff options
context:
space:
mode:
authorHerbert Xu <herbert@gondor.apana.org.au>2008-07-13 22:34:50 +0800
committerHerbert Xu <herbert@gondor.apana.org.au>2008-07-13 22:34:50 +0800
commit3b7c8442bfe7c2fd0a6b0415df6ddf66a399fd55 (patch)
treed9206d6ab90177745dd075d22b77f8fca7c5da75 /src/main.c
parent[SHELL] Expand ENV before using it (diff)
downloaddash-3b7c8442bfe7c2fd0a6b0415df6ddf66a399fd55.tar.gz
dash-3b7c8442bfe7c2fd0a6b0415df6ddf66a399fd55.zip
[OPTIONS] Added support for -l
This patch adds support for the -l option (login shell) as required
by the LSB.

Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Diffstat (limited to 'src/main.c')
-rw-r--r--src/main.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/main.c b/src/main.c
index cf34931..7d07e2d 100644
--- a/src/main.c
+++ b/src/main.c
@@ -96,6 +96,7 @@ main(int argc, char **argv)
 	volatile int state;
 	struct jmploc jmploc;
 	struct stackmark smark;
+	int login;
 
 #ifdef __GLIBC__
 	dash_errno = __errno_location();
@@ -148,8 +149,8 @@ main(int argc, char **argv)
 	rootpid = getpid();
 	init();
 	setstackmark(&smark);
-	procargs(argc, argv);
-	if (argv[0] && argv[0][0] == '-') {
+	login = procargs(argc, argv);
+	if (login) {
 		state = 1;
 		read_profile("/etc/profile");
 state1: