aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRon Yorston <rmy@pobox.com>2014-03-17 09:51:32 +0000
committerRon Yorston <rmy@pobox.com>2014-03-17 09:51:32 +0000
commitbea9034adefaece3803b295ccc18636a5d73a605 (patch)
tree675c37548dc3657a1f11a93d5e8a9609a31054e7
parent637c0772f7a1cdb08ff26e0added72470f6e392b (diff)
downloadbusybox-w32-bea9034adefaece3803b295ccc18636a5d73a605.tar.gz
busybox-w32-bea9034adefaece3803b295ccc18636a5d73a605.tar.bz2
busybox-w32-bea9034adefaece3803b295ccc18636a5d73a605.zip
Convert argv[0] to lowercase before checking for '.exe'
-rw-r--r--libbb/appletlib.c13
1 files changed, 8 insertions, 5 deletions
diff --git a/libbb/appletlib.c b/libbb/appletlib.c
index 14b21f827..5425f736e 100644
--- a/libbb/appletlib.c
+++ b/libbb/appletlib.c
@@ -834,13 +834,16 @@ int main(int argc UNUSED_PARAM, char **argv)
834 unsetenv("BUSYBOX_APPLET_NAME"); 834 unsetenv("BUSYBOX_APPLET_NAME");
835 } 835 }
836 else { 836 else {
837 int i, len = strlen(applet_name); 837 char *s = argv[0];
838 if (len > 4 && !strcmp(applet_name+len-4, ".exe")) { 838 int i, len = strlen(s);
839
840 for ( i=0; i < len; ++i ) {
841 s[i] = tolower(s[i]);
842 }
843 if (len > 4 && !strcmp(s+len-4, ".exe")) {
839 len -= 4; 844 len -= 4;
840 argv[0][applet_name-argv[0]+len] = '\0'; 845 s[len] = '\0';
841 } 846 }
842 for (i = 0; i < len; i++)
843 argv[0][applet_name-argv[0]+i] = tolower(applet_name[i]);
844 } 847 }
845 } 848 }
846 applet_name = bb_basename(applet_name); 849 applet_name = bb_basename(applet_name);