From: Namhyung Kim <namhyung.kim@lge.com>
To: Arnaldo Carvalho de Melo <acme@ghostprotocols.net>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>,
Paul Mackerras <paulus@samba.org>, Ingo Molnar <mingo@redhat.com>,
Namhyung Kim <namhyung@gmail.com>,
LKML <linux-kernel@vger.kernel.org>,
Pekka Enberg <penberg@kernel.org>
Subject: [PATCH 5/7] perf ui: Change fallback policy of setup_browser()
Date: Mon, 30 Apr 2012 13:55:09 +0900 [thread overview]
Message-ID: <1335761711-31403-6-git-send-email-namhyung.kim@lge.com> (raw)
In-Reply-To: <1335761711-31403-1-git-send-email-namhyung.kim@lge.com>
If gtk2 support is not enabled (or failed for some reason) try TUI
again instead of falling directly back to the stdio interface.
Acked-by: Pekka Enberg <penberg@kernel.org>
Signed-off-by: Namhyung Kim <namhyung.kim@lge.com>
---
tools/perf/ui/gtk/setup.c | 4 ++--
tools/perf/ui/setup.c | 13 +++++++------
tools/perf/ui/tui/setup.c | 2 +-
tools/perf/util/cache.h | 15 ++++++---------
4 files changed, 16 insertions(+), 18 deletions(-)
diff --git a/tools/perf/ui/gtk/setup.c b/tools/perf/ui/gtk/setup.c
index 8c3b573e863d..829529957766 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 98130e099a0d..9f5f888f73e3 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 0194cea2ea0e..d33e943ac434 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 761d4e998101..cff18c617d13 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 */
--
1.7.10
next prev parent reply other threads:[~2012-04-30 4:56 UTC|newest]
Thread overview: 20+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-04-30 4:55 [PATCH 0/7] perf ui: Add basic error handling for GTK2 front-end Namhyung Kim
2012-04-30 4:55 ` [PATCH 1/7] perf ui: Make setup_browser() generic Namhyung Kim
2012-05-11 6:33 ` [tip:perf/core] " tip-bot for Namhyung Kim
2012-04-30 4:55 ` [PATCH 2/7] perf ui: Drop arg[cv] arguments from perf_gtk_setup_browser() Namhyung Kim
2012-05-11 6:34 ` [tip:perf/core] perf ui gtk: " tip-bot for Namhyung Kim
2012-04-30 4:55 ` [PATCH 3/7] perf ui/gtk: Rename functions for consistency Namhyung Kim
2012-05-11 6:35 ` [tip:perf/core] perf ui gtk: " tip-bot for Namhyung Kim
2012-04-30 4:55 ` [PATCH 4/7] perf ui: Add gtk2 support into setup_browser() Namhyung Kim
2012-05-11 6:36 ` [tip:perf/core] " tip-bot for Namhyung Kim
2012-04-30 4:55 ` Namhyung Kim [this message]
2012-05-11 6:37 ` [tip:perf/core] perf ui: Change fallback policy of setup_browser() tip-bot for Namhyung Kim
2012-04-30 4:55 ` [PATCH 6/7] perf ui: Introduce struct perf_error_ops Namhyung Kim
2012-05-02 19:03 ` Arnaldo Carvalho de Melo
2012-05-03 14:35 ` Namhyung Kim
2012-04-30 4:55 ` [PATCH 7/7] perf ui/gtk: Use " Namhyung Kim
2012-04-30 6:31 ` Pekka Enberg
2012-04-30 8:31 ` Namhyung Kim
2012-05-07 8:10 ` Ingo Molnar
2012-05-07 8:26 ` Namhyung Kim
2012-05-07 8:40 ` Ingo Molnar
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1335761711-31403-6-git-send-email-namhyung.kim@lge.com \
--to=namhyung.kim@lge.com \
--cc=a.p.zijlstra@chello.nl \
--cc=acme@ghostprotocols.net \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@redhat.com \
--cc=namhyung@gmail.com \
--cc=paulus@samba.org \
--cc=penberg@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).