From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752742AbcEILmD (ORCPT ); Mon, 9 May 2016 07:42:03 -0400 Received: from mail-pa0-f68.google.com ([209.85.220.68]:34112 "EHLO mail-pa0-f68.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752606AbcEILmA (ORCPT ); Mon, 9 May 2016 07:42:00 -0400 From: Taeung Song To: Arnaldo Carvalho de Melo Cc: linux-kernel@vger.kernel.org, Jiri Olsa , Namhyung Kim , Ingo Molnar , Peter Zijlstra , Alexander Shishkin , Taeung Song Subject: [PATCH 2/4] perf tools: Separate out code setting ground colors from ui_browser__color_config Date: Mon, 9 May 2016 20:41:47 +0900 Message-Id: <1462794109-14652-3-git-send-email-treeze.taeung@gmail.com> X-Mailer: git-send-email 2.5.0 In-Reply-To: <1462794109-14652-1-git-send-email-treeze.taeung@gmail.com> References: <1462794109-14652-1-git-send-email-treeze.taeung@gmail.com> Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org ui_browser__color_config() set foreground and background colors values in ui_browser__colorsets. But it can be reused by other functions so make ui_browser__config_gcolors() bringing it from ui_browser__color_config(). Cc: Namhyung Kim Cc: Jiri Olsa Signed-off-by: Taeung Song --- tools/perf/ui/browser.c | 43 ++++++++++++++++++++++++++----------------- 1 file changed, 26 insertions(+), 17 deletions(-) diff --git a/tools/perf/ui/browser.c b/tools/perf/ui/browser.c index af68a9d..a477867 100644 --- a/tools/perf/ui/browser.c +++ b/tools/perf/ui/browser.c @@ -553,12 +553,33 @@ static struct ui_browser_colorset { } }; +static int ui_browser__config_gcolors(struct ui_browser_colorset *ui_browser_color, + const char *value) +{ + char *fg = NULL, *bg; + + fg = strdup(value); + if (fg == NULL) + return -1; + + bg = strchr(fg, ','); + if (bg == NULL) { + free(fg); + return -1; + } + + *bg = '\0'; + while (isspace(*++bg)); + + ui_browser_color->fg = fg; + ui_browser_color->bg = bg; + return 0; +} static int ui_browser__color_config(const char *var, const char *value, void *data __maybe_unused) { - char *fg = NULL, *bg; - int i; + int i, ret; /* same dir for all commands */ if (prefixcmp(var, "colors.") != 0) @@ -570,23 +591,11 @@ static int ui_browser__color_config(const char *var, const char *value, if (strcmp(ui_browser__colorsets[i].name, name) != 0) continue; - fg = strdup(value); - if (fg == NULL) - break; - - bg = strchr(fg, ','); - if (bg == NULL) - break; - - *bg = '\0'; - while (isspace(*++bg)); - ui_browser__colorsets[i].bg = bg; - ui_browser__colorsets[i].fg = fg; - return 0; + ret = ui_browser__config_gcolors(&ui_browser__colorsets[i], value); + break; } - free(fg); - return -1; + return ret; } void ui_browser__argv_seek(struct ui_browser *browser, off_t offset, int whence) -- 2.5.0