standalone shell / prefer_applets: fix "exe" in comm fields
function old new delta main 92 106 +14 Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
This commit is contained in:
		@@ -34,6 +34,13 @@
 | 
			
		||||
# include <malloc.h> /* for mallopt */
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
#include <sys/prctl.h>
 | 
			
		||||
#ifndef PR_SET_NAME
 | 
			
		||||
#define PR_SET_NAME 15
 | 
			
		||||
#endif
 | 
			
		||||
#ifndef PR_GET_NAME
 | 
			
		||||
#define PR_GET_NAME 16
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
/* Declare <applet>_main() */
 | 
			
		||||
#define PROTOTYPES
 | 
			
		||||
@@ -1056,6 +1063,17 @@ int main(int argc UNUSED_PARAM, char **argv)
 | 
			
		||||
	if (applet_name[0] == '-')
 | 
			
		||||
		applet_name++;
 | 
			
		||||
	applet_name = bb_basename(applet_name);
 | 
			
		||||
 | 
			
		||||
# if defined(__linux__)
 | 
			
		||||
	/* If we are a result of execv("/proc/self/exe"), fix ugly comm of "exe" */
 | 
			
		||||
	if (ENABLE_FEATURE_SH_STANDALONE
 | 
			
		||||
	 || ENABLE_FEATURE_PREFER_APPLETS
 | 
			
		||||
	 || !BB_MMU
 | 
			
		||||
	) {
 | 
			
		||||
		prctl(PR_SET_NAME, (long)applet_name, 0, 0, 0);
 | 
			
		||||
	}
 | 
			
		||||
# endif
 | 
			
		||||
 | 
			
		||||
	parse_config_file(); /* ...maybe, if FEATURE_SUID_CONFIG */
 | 
			
		||||
	run_applet_and_exit(applet_name, argv);
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user