lkml.org 
[lkml]   [2012]   [Mar]   [29]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 3/7] perf ui: Make setup_browser() generic
    Date
    The setup_browser contained newt-related codes in it.
    As gtk front-end added recently, it should be more
    generic to handle both cases properly. So move newt
    codes to the ui__init() for now.

    Acked-by: Pekka Enberg <penberg@kernel.org>
    Signed-off-by: Namhyung Kim <namhyung.kim@lge.com>
    ---
    tools/perf/ui/setup.c | 44 +++++++++++++++++++++++++-------------------
    1 files changed, 25 insertions(+), 19 deletions(-)

    diff --git a/tools/perf/ui/setup.c b/tools/perf/ui/setup.c
    index d111b0047324..9947ec0f7fd1 100644
    --- a/tools/perf/ui/setup.c
    +++ b/tools/perf/ui/setup.c
    @@ -93,14 +93,37 @@ static void newt_suspend(void *d __used)
    newtResume();
    }

    +static void ui__exit(void);
    +
    +static void ui__signal(int sig)
    +{
    + ui__exit();
    + psignal(sig, "perf");
    + exit(0);
    +}
    +
    static int ui__init(void)
    {
    - int err = SLkp_init();
    + int err;

    - if (err < 0)
    + newtInit();
    + err = SLkp_init();
    + if (err < 0) {
    + pr_err("TUI initialization failed.\n");
    goto out;
    + }

    SLkp_define_keysym((char *)"^(kB)", SL_KEY_UNTAB);
    +
    + newtSetSuspendCallback(newt_suspend, NULL);
    + ui_helpline__init();
    + ui_browser__init();
    +
    + signal(SIGSEGV, ui__signal);
    + signal(SIGFPE, ui__signal);
    + signal(SIGINT, ui__signal);
    + signal(SIGQUIT, ui__signal);
    + signal(SIGTERM, ui__signal);
    out:
    return err;
    }
    @@ -113,13 +136,6 @@ static void ui__exit(void)
    SLang_reset_tty();
    }

    -static void ui__signal(int sig)
    -{
    - ui__exit();
    - psignal(sig, "perf");
    - exit(0);
    -}
    -
    void setup_browser(bool fallback_to_pager)
    {
    if (!isatty(1) || !use_browser || dump_trace) {
    @@ -130,17 +146,7 @@ void setup_browser(bool fallback_to_pager)
    }

    use_browser = 1;
    - newtInit();
    ui__init();
    - newtSetSuspendCallback(newt_suspend, NULL);
    - ui_helpline__init();
    - ui_browser__init();
    -
    - signal(SIGSEGV, ui__signal);
    - signal(SIGFPE, ui__signal);
    - signal(SIGINT, ui__signal);
    - signal(SIGQUIT, ui__signal);
    - signal(SIGTERM, ui__signal);
    }

    void exit_browser(bool wait_for_ok)
    --
    1.7.7.6


    \
     
     \ /
      Last update: 2012-03-29 08:39    [W:0.023 / U:64.204 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site