On Sat, 18 Aug 2012 10:52:03 +0300, Pekka Enberg wrote: > On Fri, Aug 17, 2012 at 7:56 PM, Namhyung Kim <namhy...@kernel.org> wrote: >> Currently the gtk_main_quit() is called twice when perf exits so the >> following warning is emitted: >> >> [penberg@tux perf]$ ./perf report --gtk >> ^Cperf: Interrupt >> >> (perf:4048): Gtk-CRITICAL **: IA__gtk_main_quit: assertion `main_loops != >> NULL' failed >> >> Fix it by not to call it unnecessarily. >> >> Reported-by: Pekka Enberg <penb...@kernel.org> >> Signed-off-by: Namhyung Kim <namhy...@kernel.org> >> --- >> tools/perf/ui/gtk/setup.c | 2 ++ >> 1 file changed, 2 insertions(+) >> >> diff --git a/tools/perf/ui/gtk/setup.c b/tools/perf/ui/gtk/setup.c >> index ad40b3626fdb..ec1ee26b485a 100644 >> --- a/tools/perf/ui/gtk/setup.c >> +++ b/tools/perf/ui/gtk/setup.c >> @@ -13,6 +13,8 @@ int perf_gtk__init(void) >> >> void perf_gtk__exit(bool wait_for_ok __used) >> { >> + if (!perf_gtk__is_active_context(pgctx)) >> + return; >> perf_error__unregister(&perf_gtk_eops); >> gtk_main_quit(); >> } > > Wouldn't it be nicer to rearrange the callers so that perf_gtk__exit() > is not called twice?
You mean this? diff --git a/tools/perf/ui/setup.c b/tools/perf/ui/setup.c index c7820e569660..d25e145e9a89 100644 --- a/tools/perf/ui/setup.c +++ b/tools/perf/ui/setup.c @@ -2,6 +2,7 @@ #include "../cache.h" #include "../debug.h" +#include "gtk/gtk.h" pthread_mutex_t ui__lock = PTHREAD_MUTEX_INITIALIZER; @@ -37,7 +38,8 @@ void exit_browser(bool wait_for_ok) { switch (use_browser) { case 2: - perf_gtk__exit(wait_for_ok); + if (perf_gtk__is_active_context(pgctx)) + perf_gtk__exit(wait_for_ok); break; case 1: -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/