diff options
Diffstat (limited to 'tools/perf/builtin-help.c')
| -rw-r--r-- | tools/perf/builtin-help.c | 48 | 
1 files changed, 24 insertions, 24 deletions
| diff --git a/tools/perf/builtin-help.c b/tools/perf/builtin-help.c index 492f8e14ab09..530a7f2fa0f3 100644 --- a/tools/perf/builtin-help.c +++ b/tools/perf/builtin-help.c @@ -108,10 +108,14 @@ out:  	return ret;  } -static void exec_woman_emacs(const char *path, const char *page) +static void exec_failed(const char *cmd)  {  	char sbuf[STRERR_BUFSIZE]; +	pr_warning("failed to exec '%s': %s", cmd, str_error_r(errno, sbuf, sizeof(sbuf))); +} +static void exec_woman_emacs(const char *path, const char *page) +{  	if (!check_emacsclient_version()) {  		/* This works only with emacsclient version >= 22. */  		char *man_page; @@ -122,8 +126,7 @@ static void exec_woman_emacs(const char *path, const char *page)  			execlp(path, "emacsclient", "-e", man_page, NULL);  			free(man_page);  		} -		warning("failed to exec '%s': %s", path, -			str_error_r(errno, sbuf, sizeof(sbuf))); +		exec_failed(path);  	}  } @@ -134,7 +137,6 @@ static void exec_man_konqueror(const char *path, const char *page)  	if (display && *display) {  		char *man_page;  		const char *filename = "kfmclient"; -		char sbuf[STRERR_BUFSIZE];  		/* It's simpler to launch konqueror using kfmclient. */  		if (path) { @@ -155,33 +157,27 @@ static void exec_man_konqueror(const char *path, const char *page)  			execlp(path, filename, "newTab", man_page, NULL);  			free(man_page);  		} -		warning("failed to exec '%s': %s", path, -			str_error_r(errno, sbuf, sizeof(sbuf))); +		exec_failed(path);  	}  }  static void exec_man_man(const char *path, const char *page)  { -	char sbuf[STRERR_BUFSIZE]; -  	if (!path)  		path = "man";  	execlp(path, "man", page, NULL); -	warning("failed to exec '%s': %s", path, -		str_error_r(errno, sbuf, sizeof(sbuf))); +	exec_failed(path);  }  static void exec_man_cmd(const char *cmd, const char *page)  { -	char sbuf[STRERR_BUFSIZE];  	char *shell_cmd;  	if (asprintf(&shell_cmd, "%s %s", cmd, page) > 0) {  		execl("/bin/sh", "sh", "-c", shell_cmd, NULL);  		free(shell_cmd);  	} -	warning("failed to exec '%s': %s", cmd, -		str_error_r(errno, sbuf, sizeof(sbuf))); +	exec_failed(cmd);  }  static void add_man_viewer(const char *name) @@ -214,6 +210,12 @@ static void do_add_man_viewer_info(const char *name,  	man_viewer_info_list = new;  } +static void unsupported_man_viewer(const char *name, const char *var) +{ +	pr_warning("'%s': path for unsupported man viewer.\n" +		   "Please consider using 'man.<tool>.%s' instead.", name, var); +} +  static int add_man_viewer_path(const char *name,  			       size_t len,  			       const char *value) @@ -221,9 +223,7 @@ static int add_man_viewer_path(const char *name,  	if (supported_man_viewer(name, len))  		do_add_man_viewer_info(name, len, value);  	else -		warning("'%s': path for unsupported man viewer.\n" -			"Please consider using 'man.<tool>.cmd' instead.", -			name); +		unsupported_man_viewer(name, "cmd");  	return 0;  } @@ -233,9 +233,7 @@ static int add_man_viewer_cmd(const char *name,  			      const char *value)  {  	if (supported_man_viewer(name, len)) -		warning("'%s': cmd for supported man viewer.\n" -			"Please consider using 'man.<tool>.path' instead.", -			name); +		unsupported_man_viewer(name, "path");  	else  		do_add_man_viewer_info(name, len, value); @@ -247,8 +245,10 @@ static int add_man_viewer_info(const char *var, const char *value)  	const char *name = var + 4;  	const char *subkey = strrchr(name, '.'); -	if (!subkey) -		return error("Config with no key for man viewer: %s", name); +	if (!subkey) { +		pr_err("Config with no key for man viewer: %s", name); +		return -1; +	}  	if (!strcmp(subkey, ".path")) {  		if (!value) @@ -261,7 +261,7 @@ static int add_man_viewer_info(const char *var, const char *value)  		return add_man_viewer_cmd(name, subkey - name, value);  	} -	warning("'%s': unsupported man viewer sub key.", subkey); +	pr_warning("'%s': unsupported man viewer sub key.", subkey);  	return 0;  } @@ -332,7 +332,7 @@ static void setup_man_path(void)  		setenv("MANPATH", new_path, 1);  		free(new_path);  	} else { -		error("Unable to setup man path"); +		pr_err("Unable to setup man path");  	}  } @@ -349,7 +349,7 @@ static void exec_viewer(const char *name, const char *page)  	else if (info)  		exec_man_cmd(info, page);  	else -		warning("'%s': unknown man viewer.", name); +		pr_warning("'%s': unknown man viewer.", name);  }  static int show_man_page(const char *perf_cmd) |