Re: [PATCH v5 5/7] perf config: Initialize ui_browser__colorsets with default config items

From: Namhyung Kim
Date: Tue Jul 12 2016 - 01:40:20 EST


On Wed, Jul 06, 2016 at 02:20:21PM +0900, Taeung Song wrote:
> Set default config values for 'colors' section with 'colors_config_items[]'
> instead of actual const char * type values.
> (e.g. using colors_config_item[CONFIG_COLORS_TOP].value
> instead of "red, default" string value for 'colors.top')
>
> Cc: Namhyung Kim <namhyung@xxxxxxxxxx>
> Cc: Jiri Olsa <jolsa@xxxxxxxxxx>
> Cc: Masami Hiramatsu <mhiramat@xxxxxxxxxx>
> Cc: Wang Nan <wangnan0@xxxxxxxxxx>
> Cc: Alexander Shishkin <alexander.shishkin@xxxxxxxxxxxxxxx>
> Signed-off-by: Taeung Song <treeze.taeung@xxxxxxxxx>
> ---
> tools/perf/ui/browser.c | 53 +++++++++++++++++++++++++++++--------------------
> 1 file changed, 32 insertions(+), 21 deletions(-)
>
> diff --git a/tools/perf/ui/browser.c b/tools/perf/ui/browser.c
> index b4e21d1..380abab 100644
> --- a/tools/perf/ui/browser.c
> +++ b/tools/perf/ui/browser.c
> @@ -507,39 +507,32 @@ static struct ui_browser_colorset {
> int colorset;
> } ui_browser__colorsets[] = {
> {
> - .colorset = HE_COLORSET_TOP,
> - .name = "top",
> - .fore_back_colors = "red, default",
> + .colorset = HE_COLORSET_TOP,
> + .name = "top",

It seems like an unnecessary whitespace change, please fix the patch 4.

Thanks,
Namhyung


> },
> {
> - .colorset = HE_COLORSET_MEDIUM,
> - .name = "medium",
> - .fore_back_colors = "green, default",
> + .colorset = HE_COLORSET_MEDIUM,
> + .name = "medium",
> },
> {
> - .colorset = HE_COLORSET_NORMAL,
> - .name = "normal",
> - .fore_back_colors = "default, default",
> + .colorset = HE_COLORSET_NORMAL,
> + .name = "normal",
> },
> {
> - .colorset = HE_COLORSET_SELECTED,
> - .name = "selected",
> - .fore_back_colors = "black, yellow",
> + .colorset = HE_COLORSET_SELECTED,
> + .name = "selected",
> },
> {
> - .colorset = HE_COLORSET_JUMP_ARROWS,
> - .name = "jump_arrows",
> - .fore_back_colors = "blue, default",
> + .colorset = HE_COLORSET_JUMP_ARROWS,
> + .name = "jump_arrows",
> },
> {
> - .colorset = HE_COLORSET_ADDR,
> - .name = "addr",
> - .fore_back_colors = "magenta, default",
> + .colorset = HE_COLORSET_ADDR,
> + .name = "addr",
> },
> {
> - .colorset = HE_COLORSET_ROOT,
> - .name = "root",
> - .fore_back_colors = "white, blue",
> + .colorset = HE_COLORSET_ROOT,
> + .name = "root",
> },
> {
> .name = NULL,
> @@ -724,10 +717,28 @@ void __ui_browser__line_arrow(struct ui_browser *browser, unsigned int column,
> __ui_browser__line_arrow_down(browser, column, start, end);
> }
>
> +static void default_colors_config_init(void)
> +{
> + int i, j;
> +
> + for (i = 0; ui_browser__colorsets[i].name != NULL; ++i) {
> + const char *name = ui_browser__colorsets[i].name;
> +
> + for (j = 0; colors_config_items[j].name != NULL; j++) {
> + if (!strcmp(name, colors_config_items[j].name)) {
> + ui_browser__colorsets[i].fore_back_colors =
> + colors_config_items[j].value.s;
> + break;
> + }
> + }
> + }
> +}
> +
> void ui_browser__init(void)
> {
> int i = 0;
>
> + default_colors_config_init();
> perf_config(ui_browser__color_config, NULL);
>
> while (ui_browser__colorsets[i].name) {
> --
> 2.5.0
>