From: Namhyung Kim Date: Mon, 30 Apr 2012 04:55:09 +0000 (+0900) Subject: perf ui: Change fallback policy of setup_browser() X-Git-Tag: v3.5-rc1~120^3~40^2~16 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=dc41b9b8f02dbe2228ae787d525dac43beebb7fa;p=platform%2Fkernel%2Flinux-exynos.git perf ui: Change fallback policy of setup_browser() If gtk2 support is not enabled (or failed for some reason) try TUI again instead of falling directly back to the stdio interface. Signed-off-by: Namhyung Kim Acked-by: Pekka Enberg Cc: Ingo Molnar Cc: Namhyung Kim Cc: Paul Mackerras Cc: Pekka Enberg Cc: Peter Zijlstra Link: http://lkml.kernel.org/r/1335761711-31403-6-git-send-email-namhyung.kim@lge.com Signed-off-by: Arnaldo Carvalho de Melo --- diff --git a/tools/perf/ui/gtk/setup.c b/tools/perf/ui/gtk/setup.c index 8c3b573..8295299 100644 --- a/tools/perf/ui/gtk/setup.c +++ b/tools/perf/ui/gtk/setup.c @@ -1,9 +1,9 @@ #include "gtk.h" #include "../../util/cache.h" -void perf_gtk__init(bool fallback_to_pager __used) +int perf_gtk__init(void) { - gtk_init(NULL, NULL); + return gtk_init_check(NULL, NULL) ? 0 : -1; } void perf_gtk__exit(bool wait_for_ok __used) diff --git a/tools/perf/ui/setup.c b/tools/perf/ui/setup.c index 98130e09..9f5f888 100644 --- a/tools/perf/ui/setup.c +++ b/tools/perf/ui/setup.c @@ -13,13 +13,14 @@ void setup_browser(bool fallback_to_pager) switch (use_browser) { case 2: - perf_gtk__init(fallback_to_pager); - break; - + if (perf_gtk__init() == 0) + break; + /* fall through */ case 1: - ui__init(fallback_to_pager); - break; - + use_browser = 1; + if (ui__init() == 0) + break; + /* fall through */ default: if (fallback_to_pager) setup_pager(); diff --git a/tools/perf/ui/tui/setup.c b/tools/perf/ui/tui/setup.c index 0194cea..d33e943 100644 --- a/tools/perf/ui/tui/setup.c +++ b/tools/perf/ui/tui/setup.c @@ -100,7 +100,7 @@ static void ui__signal(int sig) exit(0); } -int ui__init(bool fallback_to_pager __used) +int ui__init(void) { int err; diff --git a/tools/perf/util/cache.h b/tools/perf/util/cache.h index 761d4e9..cff18c6 100644 --- a/tools/perf/util/cache.h +++ b/tools/perf/util/cache.h @@ -45,27 +45,24 @@ void setup_browser(bool fallback_to_pager); void exit_browser(bool wait_for_ok); #ifdef NO_NEWT_SUPPORT -static inline int ui__init(bool fallback_to_pager) +static inline int ui__init(void) { - if (fallback_to_pager) - setup_pager(); - return 0; + return -1; } static inline void ui__exit(bool wait_for_ok __used) {} #else -int ui__init(bool fallback_to_pager); +int ui__init(void); void ui__exit(bool wait_for_ok); #endif #ifdef NO_GTK2_SUPPORT -static inline void perf_gtk__init(bool fallback_to_pager) +static inline int perf_gtk__init(void) { - if (fallback_to_pager) - setup_pager(); + return -1; } static inline void perf_gtk__exit(bool wait_for_ok __used) {} #else -void perf_gtk__init(bool fallback_to_pager); +int perf_gtk__init(void); void perf_gtk__exit(bool wait_for_ok); #endif #endif /* NO_NEWT_SUPPORT && NO_GTK2_SUPPORT */