add --fatal, -f, option : makes glib critical messages abort the program
authorcompudj <compudj@04897980-b3bd-0310-b5e0-8ef037075253>
Fri, 23 Jul 2004 16:50:11 +0000 (16:50 +0000)
committercompudj <compudj@04897980-b3bd-0310-b5e0-8ef037075253>
Fri, 23 Jul 2004 16:50:11 +0000 (16:50 +0000)
git-svn-id: http://ltt.polymtl.ca/svn@628 04897980-b3bd-0310-b5e0-8ef037075253

ltt/branches/poly/lttv/lttv/main.c

index a27519e8fe2c1791a912bc43742fe7bad34a8630..f984df1414c656f26557059adc4487081c1a64dd 100644 (file)
@@ -46,7 +46,8 @@ static char
 
 static gboolean
   a_verbose,
-  a_debug;
+  a_debug,
+  a_fatal;
 
 gboolean lttv_profile_memory;
 
@@ -62,6 +63,8 @@ static void lttv_verbose(void *hook_data);
 
 static void lttv_debug(void *hook_data);
 
+static void lttv_fatal(void *hook_data);
+
 static void lttv_help(void *hook_data);
 
 /* This is the handler to specify when we dont need all the debugging 
@@ -173,6 +176,11 @@ int main(int argc, char **argv) {
   a_debug = FALSE;
   lttv_option_add("debug",'d', "print debugging messages", "none", 
       LTTV_OPT_NONE, NULL, lttv_debug, NULL);
+
+  a_fatal = FALSE;
+  lttv_option_add("fatal",'f', "make critical messages fatal",
+                  "none", 
+      LTTV_OPT_NONE, NULL, lttv_fatal, NULL);
  
   lttv_profile_memory = FALSE;
   lttv_option_add(profile_memory_long_option + 2, 
@@ -251,6 +259,13 @@ void lttv_debug(void *hook_data)
   g_info("Logging set to include DEBUG level messages");
 }
 
+void lttv_fatal(void *hook_data)
+{
+  //g_log_set_always_fatal(G_LOG_LEVEL_WARNING | G_LOG_LEVEL_CRITICAL);
+  g_log_set_always_fatal(G_LOG_LEVEL_CRITICAL);
+  g_info("Critical log from glib will abort execution");
+}
+
 void lttv_help(void *hook_data)
 {
        printf("Linux Trace Toolkit Visualizer\n");
This page took 0.026924 seconds and 4 git commands to generate.