lkml.org 
[lkml]   [2010]   [Dec]   [22]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    Date
    From
    Subject[tip:perf/core] perf probe: Rewrite show_one_line() to make it simpler
    Commit-ID:  befe341468f4e61ecaf337a0237f2aab76817437
    Gitweb: http://git.kernel.org/tip/befe341468f4e61ecaf337a0237f2aab76817437
    Author: Franck Bui-Huu <fbuihuu@gmail.com>
    AuthorDate: Mon, 20 Dec 2010 15:18:01 +0100
    Committer: Arnaldo Carvalho de Melo <acme@redhat.com>
    CommitDate: Tue, 21 Dec 2010 16:20:11 -0200

    perf probe: Rewrite show_one_line() to make it simpler

    Cc: Masami Hiramatsu <masami.hiramatsu.pt@hitachi.com>
    LKML-Reference: <1292854685-8230-3-git-send-email-fbuihuu@gmail.com>
    Signed-off-by: Franck Bui-Huu <fbuihuu@gmail.com>
    Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
    ---
    tools/perf/util/probe-event.c | 29 +++++++++++------------------
    1 files changed, 11 insertions(+), 18 deletions(-)

    diff --git a/tools/perf/util/probe-event.c b/tools/perf/util/probe-event.c
    index 0163fc0..327604c 100644
    --- a/tools/perf/util/probe-event.c
    +++ b/tools/perf/util/probe-event.c
    @@ -290,28 +290,21 @@ static int get_real_path(const char *raw_path, const char *comp_dir,
    static int show_one_line(FILE *fp, int l, bool skip, bool show_num)
    {
    char buf[LINEBUF_SIZE];
    - const char *color = PERF_COLOR_BLUE;
    + const char *color = show_num ? "" : PERF_COLOR_BLUE;
    + const char *prefix = NULL;

    - if (fgets(buf, LINEBUF_SIZE, fp) == NULL)
    - goto error;
    - if (!skip) {
    - if (show_num)
    - fprintf(stdout, "%7d %s", l, buf);
    - else
    - color_fprintf(stdout, color, " %s", buf);
    - }
    -
    - while (strlen(buf) == LINEBUF_SIZE - 1 &&
    - buf[LINEBUF_SIZE - 2] != '\n') {
    + do {
    if (fgets(buf, LINEBUF_SIZE, fp) == NULL)
    goto error;
    - if (!skip) {
    - if (show_num)
    - fprintf(stdout, "%s", buf);
    - else
    - color_fprintf(stdout, color, "%s", buf);
    + if (skip)
    + continue;
    + if (!prefix) {
    + prefix = show_num ? "%7d " : " ";
    + color_fprintf(stdout, color, prefix, l);
    }
    - }
    + color_fprintf(stdout, color, "%s", buf);
    +
    + } while (strchr(buf, '\n') == NULL);

    return 0;
    error:

    \
     
     \ /
      Last update: 2010-12-22 12:33    [W:0.044 / U:0.068 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site