From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751625AbcEJMKF (ORCPT ); Tue, 10 May 2016 08:10:05 -0400 Received: from mail-pf0-f194.google.com ([209.85.192.194]:35050 "EHLO mail-pf0-f194.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751304AbcEJMKD (ORCPT ); Tue, 10 May 2016 08:10:03 -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 RESEND 2/4] perf tools: Separate out code setting {back, fore}ground colors from ui_browser__color_config Date: Tue, 10 May 2016 21:09:57 +0900 Message-Id: <1462882197-24322-1-git-send-email-treeze.taeung@gmail.com> X-Mailer: git-send-email 2.5.0 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_colors() bringing it from ui_browser__color_config(). Cc: Namhyung Kim Cc: Jiri Olsa Signed-off-by: Taeung Song --- tools/perf/ui/browser.c | 41 ++++++++++++++++++++++++----------------- 1 file changed, 24 insertions(+), 17 deletions(-) diff --git a/tools/perf/ui/browser.c b/tools/perf/ui/browser.c index af68a9d..c905445 100644 --- a/tools/perf/ui/browser.c +++ b/tools/perf/ui/browser.c @@ -553,12 +553,31 @@ static struct ui_browser_colorset { } }; +static int ui_browser__config_colors(struct ui_browser_colorset *ui_browser_color, + const char *value) +{ + char *fg = NULL, *bg; + + fg = strdup(value); + if (fg == NULL) + return -1; + + bg = strtok(fg, ","); + if (bg == NULL) { + free(fg); + return -1; + } + ltrim(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 +589,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_colors(&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