Messages in this thread | | | Date | Wed, 9 Nov 2016 11:45:51 -0300 | From | Arnaldo Carvalho de Melo <> | Subject | Re: [PATCH 3/4] perf hist browser: Fix column indentation on --hierarchy |
| |
Em Tue, Nov 08, 2016 at 10:08:32PM +0900, Namhyung Kim escreveu: > When horizontall scrolling is used in hierarchy mode, the the right most > column has unnecessary indentation. Actually it's needed only if some > of left (overhead) columns were shown.
I see, here is the fix, thanks, testing it now...
- Arnaldo
> Signed-off-by: Namhyung Kim <namhyung@kernel.org> > --- > tools/perf/ui/browsers/hists.c | 19 +++++++++++++------ > 1 file changed, 13 insertions(+), 6 deletions(-) > > diff --git a/tools/perf/ui/browsers/hists.c b/tools/perf/ui/browsers/hists.c > index 7722ad311318..15b29a79a69b 100644 > --- a/tools/perf/ui/browsers/hists.c > +++ b/tools/perf/ui/browsers/hists.c > @@ -1361,8 +1361,10 @@ static int hist_browser__show_hierarchy_entry(struct hist_browser *browser, > width -= hpp.buf - s; > } > > - ui_browser__write_nstring(&browser->b, "", hierarchy_indent); > - width -= hierarchy_indent; > + if (!first) { > + ui_browser__write_nstring(&browser->b, "", hierarchy_indent); > + width -= hierarchy_indent; > + } > > if (column >= browser->b.horiz_scroll) { > char s[2048]; > @@ -1565,6 +1567,7 @@ static int hists_browser__scnprintf_hierarchy_headers(struct hist_browser *brows > if (advance_hpp_check(&dummy_hpp, ret)) > return ret; > > + first_node = true; > /* the first hpp_list_node is for overhead columns */ > fmt_node = list_first_entry(&hists->hpp_formats, > struct perf_hpp_list_node, list); > @@ -1579,12 +1582,16 @@ static int hists_browser__scnprintf_hierarchy_headers(struct hist_browser *brows > ret = scnprintf(dummy_hpp.buf, dummy_hpp.size, " "); > if (advance_hpp_check(&dummy_hpp, ret)) > break; > + > + first_node = false; > } > > - ret = scnprintf(dummy_hpp.buf, dummy_hpp.size, "%*s", > - indent * HIERARCHY_INDENT, ""); > - if (advance_hpp_check(&dummy_hpp, ret)) > - return ret; > + if (!first_node) { > + ret = scnprintf(dummy_hpp.buf, dummy_hpp.size, "%*s", > + indent * HIERARCHY_INDENT, ""); > + if (advance_hpp_check(&dummy_hpp, ret)) > + return ret; > + } > > first_node = true; > list_for_each_entry_continue(fmt_node, &hists->hpp_formats, list) { > -- > 2.10.1
| |