document the change in prompt timeout handling
[vlock.git] / src / logging.c
blob88ddaf88668373022e9a1e9d7a933effb1dce741
1 #include <stdio.h>
2 #include <stdlib.h>
4 #include <glib.h>
6 #include "logging.h"
8 static void vlock_log_handler(const gchar *log_domain,
9 GLogLevelFlags __attribute__((unused)) log_level,
10 const gchar *message,
11 gpointer __attribute__((unused)) user_data)
13 /* XXX: observe the log level (maybe look at some environment variable) */
14 if (log_domain != NULL)
15 fprintf(stderr, "%s(%s): %s\n", g_get_prgname(), log_domain, message);
16 else
17 fprintf(stderr, "%s: %s\n", g_get_prgname(), message);
20 static void vlock_error_log_handler(const gchar *log_domain,
21 GLogLevelFlags log_level,
22 const gchar *message,
23 gpointer __attribute__((unused)) user_data)
25 vlock_log_handler(log_domain, log_level, message, NULL);
26 abort();
29 static void vlock_critical_log_handler(const gchar *log_domain,
30 GLogLevelFlags log_level,
31 const gchar *message,
32 gpointer __attribute__(
33 (unused)) user_data)
35 vlock_log_handler(log_domain, log_level, message, NULL);
36 exit(1);
39 void vlock_initialize_logging(void)
41 g_log_set_handler(NULL, G_LOG_LEVEL_ERROR, vlock_error_log_handler, NULL);
42 g_log_set_handler(NULL,
43 G_LOG_LEVEL_CRITICAL,
44 vlock_critical_log_handler,
45 NULL);
46 g_log_set_default_handler(vlock_log_handler, NULL);