summaryrefslogtreecommitdiffstats
path: root/tools/perf/ui
diff options
context:
space:
mode:
authorIngo Molnar <mingo@kernel.org>2015-12-08 06:06:20 +0100
committerIngo Molnar <mingo@kernel.org>2015-12-08 06:06:20 +0100
commita30c99a0beb3030ba42dab38cad6273cd090805d (patch)
tree0b5f3595b499feb192cf9ec6d225db2d3e35ee95 /tools/perf/ui
parent803ca41856a26b98150a669290c50adc9bfc648e (diff)
parent03fba21adb190fc0aec9c2556639c1c1b195aee7 (diff)
downloadlinux-stable-a30c99a0beb3030ba42dab38cad6273cd090805d.tar.gz
linux-stable-a30c99a0beb3030ba42dab38cad6273cd090805d.tar.bz2
linux-stable-a30c99a0beb3030ba42dab38cad6273cd090805d.zip
Merge branch 'perf/urgent' into perf/core, to pick up fixes
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Diffstat (limited to 'tools/perf/ui')
-rw-r--r--tools/perf/ui/browsers/hists.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/tools/perf/ui/browsers/hists.c b/tools/perf/ui/browsers/hists.c
index dcdcbafb078b..ec331969b7d7 100644
--- a/tools/perf/ui/browsers/hists.c
+++ b/tools/perf/ui/browsers/hists.c
@@ -340,6 +340,9 @@ static bool hist_browser__toggle_fold(struct hist_browser *browser)
struct callchain_list *cl = container_of(ms, struct callchain_list, ms);
bool has_children;
+ if (!he || !ms)
+ return false;
+
if (ms == &he->ms)
has_children = hist_entry__toggle_fold(he);
else
@@ -1189,6 +1192,8 @@ static unsigned int hist_browser__refresh(struct ui_browser *browser)
}
ui_browser__hists_init_top(browser);
+ hb->he_selection = NULL;
+ hb->selection = NULL;
for (nd = browser->top; nd; nd = rb_next(nd)) {
struct hist_entry *h = rb_entry(nd, struct hist_entry, rb_node);
@@ -1294,6 +1299,9 @@ static void ui_browser__hists_seek(struct ui_browser *browser,
* and stop when we printed enough lines to fill the screen.
*/
do_offset:
+ if (!nd)
+ return;
+
if (offset > 0) {
do {
h = rb_entry(nd, struct hist_entry, rb_node);