aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorandersen <andersen@69ca8d6d-28ef-0310-b511-8ec308f3f277>2001-06-21 04:56:24 +0000
committerandersen <andersen@69ca8d6d-28ef-0310-b511-8ec308f3f277>2001-06-21 04:56:24 +0000
commitb15dee1301a4c555b7b29e2b493d61a97e3b5427 (patch)
treec8c65e09e7b4ddd10f031442ff63727f0ed46b04
parent58b48c1204cb794429ac35e36436ee09ea341a02 (diff)
downloadbusybox-w32-b15dee1301a4c555b7b29e2b493d61a97e3b5427.tar.gz
busybox-w32-b15dee1301a4c555b7b29e2b493d61a97e3b5427.tar.bz2
busybox-w32-b15dee1301a4c555b7b29e2b493d61a97e3b5427.zip
Per a suggestion from Tom Oehser, fix up the leading-hyphen hack to
make it general. Now all leading single hyphens are ignored for purposed of applet name matching, while argv[0] is still passed unaltered to applets, so leading-hyphen sensitive applets (such as sh) can react accordingly. -Erik git-svn-id: svn://busybox.net/trunk/busybox@2867 69ca8d6d-28ef-0310-b511-8ec308f3f277
-rw-r--r--applets/busybox.c7
-rw-r--r--busybox.c7
2 files changed, 4 insertions, 10 deletions
diff --git a/applets/busybox.c b/applets/busybox.c
index f3d0c4c2f..7a220f7b0 100644
--- a/applets/busybox.c
+++ b/applets/busybox.c
@@ -74,13 +74,10 @@ int main(int argc, char **argv)
74 applet_name = s; 74 applet_name = s;
75 } 75 }
76 76
77#ifdef BB_SH 77 /* Add in a special case hack for a leading hyphen */
78 /* Add in a special case hack -- whenever **argv == '-'
79 * (i.e., '-su' or '-sh') always invoke the shell */
80 if (**argv == '-' && *(*argv+1)!= '-') { 78 if (**argv == '-' && *(*argv+1)!= '-') {
81 applet_name = "sh"; 79 applet_name = (*argv+1);
82 } 80 }
83#endif
84 81
85#ifdef BB_LOCALE_SUPPORT 82#ifdef BB_LOCALE_SUPPORT
86#ifdef BB_INIT 83#ifdef BB_INIT
diff --git a/busybox.c b/busybox.c
index f3d0c4c2f..7a220f7b0 100644
--- a/busybox.c
+++ b/busybox.c
@@ -74,13 +74,10 @@ int main(int argc, char **argv)
74 applet_name = s; 74 applet_name = s;
75 } 75 }
76 76
77#ifdef BB_SH 77 /* Add in a special case hack for a leading hyphen */
78 /* Add in a special case hack -- whenever **argv == '-'
79 * (i.e., '-su' or '-sh') always invoke the shell */
80 if (**argv == '-' && *(*argv+1)!= '-') { 78 if (**argv == '-' && *(*argv+1)!= '-') {
81 applet_name = "sh"; 79 applet_name = (*argv+1);
82 } 80 }
83#endif
84 81
85#ifdef BB_LOCALE_SUPPORT 82#ifdef BB_LOCALE_SUPPORT
86#ifdef BB_INIT 83#ifdef BB_INIT