svn commit: trunk/busybox: include libbb scripts

vda at busybox.net vda at busybox.net
Thu Oct 11 03:06:27 PDT 2007


Author: vda
Date: 2007-10-11 03:06:26 -0700 (Thu, 11 Oct 2007)
New Revision: 20220

Log:
fix a problem with two different applet_name's



Modified:
   trunk/busybox/include/busybox.h
   trunk/busybox/libbb/appletlib.c
   trunk/busybox/scripts/trylink


Changeset:
Modified: trunk/busybox/include/busybox.h
===================================================================
--- trunk/busybox/include/busybox.h	2007-10-11 10:05:36 UTC (rev 20219)
+++ trunk/busybox/include/busybox.h	2007-10-11 10:06:26 UTC (rev 20220)
@@ -56,7 +56,7 @@
 /* Length of these names has effect on size of libbusybox
  * and "individual" binaries. Keep them short.
  */
-void lbb_prepare(char **argv) MAIN_EXTERNALLY_VISIBLE;
+void lbb_prepare(const char *applet, char **argv) MAIN_EXTERNALLY_VISIBLE;
 #if ENABLE_BUILD_LIBBUSYBOX
 #if ENABLE_FEATURE_SHARED_BUSYBOX
 int lbb_main(int argc, char **argv) EXTERNALLY_VISIBLE;

Modified: trunk/busybox/libbb/appletlib.c
===================================================================
--- trunk/busybox/libbb/appletlib.c	2007-10-11 10:05:36 UTC (rev 20219)
+++ trunk/busybox/libbb/appletlib.c	2007-10-11 10:06:26 UTC (rev 20220)
@@ -127,11 +127,12 @@
 int *const bb_errno __attribute__ ((section (".data")));
 #endif
 
-void lbb_prepare(char **argv)
+void lbb_prepare(const char *applet, char **argv)
 {
 #ifdef __GLIBC__
 	(*(int **)&bb_errno) = __errno_location();
 #endif
+	applet_name = applet;
 
 	/* Set locale for everybody except 'init' */
 	if (ENABLE_LOCALE_SUPPORT && getpid() != 1)
@@ -666,7 +667,7 @@
 int main(int argc, char **argv)
 #endif
 {
-	lbb_prepare(argv);
+	lbb_prepare("busybox", argv);
 
 #if !BB_MMU
 	/* NOMMU re-exec trick sets high-order bit in first byte of name */

Modified: trunk/busybox/scripts/trylink
===================================================================
--- trunk/busybox/scripts/trylink	2007-10-11 10:05:36 UTC (rev 20219)
+++ trunk/busybox/scripts/trylink	2007-10-11 10:06:26 UTC (rev 20220)
@@ -220,14 +220,12 @@
     while read name main junk; do
 
 	echo "\
-void lbb_prepare(char **argv);
+void lbb_prepare(const char *applet, char **argv);
 int $main(int argc, char **argv);
 
-const char *applet_name = \"$name\";
-
 int main(int argc, char **argv)
 {
-	lbb_prepare(argv);
+	lbb_prepare(\"$name\", argv);
 	return $main(argc, argv);
 }
 " >"$sharedlib_dir/applet.c"



More information about the busybox-cvs mailing list