From 0f6ed55ef99c2a32c649db62b1fe00b4a93a51ca Mon Sep 17 00:00:00 2001 From: Bastien Nocera Date: Wed, 20 May 2009 13:03:39 -0400 Subject: [PATCH] core: allow warnings to be fatal with --g-fatal-warnings --- src/NetworkManager.c | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/src/NetworkManager.c b/src/NetworkManager.c index 2656794df0..c6b04d299f 100644 --- a/src/NetworkManager.c +++ b/src/NetworkManager.c @@ -252,6 +252,7 @@ main (int argc, char *argv[]) { GOptionContext *opt_ctx = NULL; gboolean become_daemon = FALSE; + gboolean g_fatal_warnings = FALSE; char * pidfile = NULL; char * user_pidfile = NULL; gboolean success; @@ -264,6 +265,7 @@ main (int argc, char *argv[]) GOptionEntry options[] = { {"no-daemon", 0, 0, G_OPTION_ARG_NONE, &become_daemon, "Don't become a daemon", NULL}, + { "g-fatal-warnings", 0, 0, G_OPTION_ARG_NONE, &g_fatal_warnings, "Make all warnings fatal", NULL }, {"pid-file", 0, 0, G_OPTION_ARG_FILENAME, &user_pidfile, "Specify the location of a PID file", "filename"}, {NULL} }; @@ -314,6 +316,14 @@ main (int argc, char *argv[]) write_pidfile (pidfile); } + if (g_fatal_warnings) { + GLogLevelFlags fatal_mask; + + fatal_mask = g_log_set_always_fatal (G_LOG_FATAL_MASK); + fatal_mask |= G_LOG_LEVEL_WARNING | G_LOG_LEVEL_CRITICAL; + g_log_set_always_fatal (fatal_mask); + } + /* * Set the umask to 0022, which results in 0666 & ~0022 = 0644. * Otherwise, if root (or an su'ing user) has a wacky umask, we could