diff options
Diffstat (limited to 'tools/perf/util/help.c')
| -rw-r--r-- | tools/perf/util/help.c | 30 | 
1 files changed, 6 insertions, 24 deletions
diff --git a/tools/perf/util/help.c b/tools/perf/util/help.c index fbb00978b2e..6f2975a0035 100644 --- a/tools/perf/util/help.c +++ b/tools/perf/util/help.c @@ -4,28 +4,6 @@  #include "levenshtein.h"  #include "help.h" -/* most GUI terminals set COLUMNS (although some don't export it) */ -static int term_columns(void) -{ -	char *col_string = getenv("COLUMNS"); -	int n_cols; - -	if (col_string && (n_cols = atoi(col_string)) > 0) -		return n_cols; - -#ifdef TIOCGWINSZ -	{ -		struct winsize ws; -		if (!ioctl(1, TIOCGWINSZ, &ws)) { -			if (ws.ws_col) -				return ws.ws_col; -		} -	} -#endif - -	return 80; -} -  void add_cmdname(struct cmdnames *cmds, const char *name, size_t len)  {  	struct cmdname *ent = malloc(sizeof(*ent) + len + 1); @@ -96,9 +74,13 @@ static void pretty_print_string_list(struct cmdnames *cmds, int longest)  {  	int cols = 1, rows;  	int space = longest + 1; /* min 1 SP between words */ -	int max_cols = term_columns() - 1; /* don't print *on* the edge */ +	struct winsize win; +	int max_cols;  	int i, j; +	get_term_dimensions(&win); +	max_cols = win.ws_col - 1; /* don't print *on* the edge */ +  	if (space < max_cols)  		cols = max_cols / space;  	rows = (cmds->cnt + cols - 1) / cols; @@ -324,7 +306,7 @@ const char *help_unknown_cmd(const char *cmd)  		main_cmds.names[0] = NULL;  		clean_cmdnames(&main_cmds); -		fprintf(stderr, "WARNING: You called a Git program named '%s', " +		fprintf(stderr, "WARNING: You called a perf program named '%s', "  			"which does not exist.\n"  			"Continuing under the assumption that you meant '%s'\n",  			cmd, assumed);  |