summaryrefslogtreecommitdiffstats
path: root/log.c
diff options
context:
space:
mode:
authorNicholas Marriott <nicm@openbsd.org>2012-03-17 18:23:03 +0000
committerNicholas Marriott <nicm@openbsd.org>2012-03-17 18:23:03 +0000
commita597e3546cf667c2db91aea5545d2cb2125366f5 (patch)
tree8b534edb8bf75808f5260d72263f304dbf47ea88 /log.c
parent0489213b1bf6a3fc7e158951ba993f4b88f48557 (diff)
Redirect libevent logging to tmux's log.
Diffstat (limited to 'log.c')
-rw-r--r--log.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/log.c b/log.c
index 35728855..0798ee91 100644
--- a/log.c
+++ b/log.c
@@ -42,6 +42,13 @@ int log_level;
void log_vwrite(int, const char *, va_list);
__dead void log_vfatal(const char *, va_list);
+/* Log callback for libevent. */
+void
+log_event_cb(unused int severity, const char *msg)
+{
+ log_warnx(msg);
+}
+
/* Open logging to tty. */
void
log_open_tty(int level)
@@ -51,6 +58,7 @@ log_open_tty(int level)
setlinebuf(stderr);
setlinebuf(stdout);
+ event_set_log_callback(log_event_cb);
tzset();
}
@@ -67,6 +75,7 @@ log_open_file(int level, const char *path)
log_level = level;
setlinebuf(log_file);
+ event_set_log_callback(log_event_cb);
tzset();
}
@@ -78,6 +87,8 @@ log_close(void)
if (log_type == LOG_TYPE_FILE)
fclose(log_file);
+ event_set_log_callback(NULL);
+
log_type = LOG_TYPE_OFF;
}