From: SeokYeon Hwang Date: Wed, 12 Aug 2015 05:30:40 +0000 (+0900) Subject: error_handler: do not print backtrace when early normal exit X-Git-Tag: Tizen_Studio_1.3_Release_p2.3.2~40^2~202 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=3e0c1c4a7955430c7ba66c1d90c4c861cf045d4d;p=sdk%2Femulator%2Fqemu.git error_handler: do not print backtrace when early normal exit Backtrace is very messy when exit with printing help, ... Change-Id: I6e18db754105aae051e4ec624c62aee9f874b59c Signed-off-by: SeokYeon Hwang --- diff --git a/tizen/src/util/error_handler.c b/tizen/src/util/error_handler.c index 654230726f..af179b8d6e 100644 --- a/tizen/src/util/error_handler.c +++ b/tizen/src/util/error_handler.c @@ -60,6 +60,8 @@ static LPTOP_LEVEL_EXCEPTION_FILTER prevExceptionFilter; static pthread_spinlock_t siglock; #endif +bool print_backtrace_at_normal_exit_enabled = false; + /* Print 'backtrace' */ #ifdef _WIN32 struct frame_layout { @@ -175,10 +177,15 @@ static void dump_backtrace(void *ptr, int depth) static void handle_error_at_exit(void) { - // dump backtrace log no matter what - INFO("Stack backtrace for tracing...\n"); - INFO("This is not an error.\n"); - dump_backtrace(NULL, 0); + if (print_backtrace_at_normal_exit_enabled) { + INFO("Stack backtrace for tracing...\n"); + INFO("This is not an error.\n"); + dump_backtrace(NULL, 0); + } +} + +void enable_print_backtrace_at_normal_exit(void) { + print_backtrace_at_normal_exit_enabled = true; } #ifdef CONFIG_WIN32 diff --git a/tizen/src/util/error_handler.h b/tizen/src/util/error_handler.h index f45b05f320..783dd00dc3 100644 --- a/tizen/src/util/error_handler.h +++ b/tizen/src/util/error_handler.h @@ -32,5 +32,6 @@ #define __ERROR_HANDLER_H__ void init_error_handler(void); +void enable_print_backtrace_at_normal_exit(void); #endif /* __ERROR_HANDLER_H__ */ diff --git a/vl.c b/vl.c index d1425ea2af..762feb8254 100644 --- a/vl.c +++ b/vl.c @@ -136,6 +136,7 @@ int qemu_main(int argc, char **argv, char **envp); #include "tizen/src/ui/qt5.h" #include "tizen/src/util/ui_operations.h" #include "tizen/src/ecs/ecs.h" +#include "tizen/src/util/error_handler.h" # ifdef CONFIG_JAVA_UI #include "tizen/src/display/maru_display.h" # endif @@ -4632,6 +4633,9 @@ int main(int argc, char **argv, char **envp) } } +#ifdef CONFIG_MARU + enable_print_backtrace_at_normal_exit(); +#endif main_loop(); bdrv_close_all(); pause_all_vcpus();