diff options
author | nicm <nicm> | 2015-11-24 21:19:46 +0000 |
---|---|---|
committer | nicm <nicm> | 2015-11-24 21:19:46 +0000 |
commit | 9cccb8c1159b0a4747b5152e2df08e42207b574d (patch) | |
tree | 61099cb87d37ada9605022281a705c1ddf73c121 /log.c | |
parent | 4ec61bef461aba6d5849bce971a241850b8d7ef6 (diff) |
Make the log stuff a bit tidier with some helper functions.
Diffstat (limited to 'log.c')
-rw-r--r-- | log.c | 35 |
1 files changed, 29 insertions, 6 deletions
@@ -22,30 +22,53 @@ #include <stdio.h> #include <stdlib.h> #include <string.h> +#include <unistd.h> #include <vis.h> #include "tmux.h" -FILE *log_file; +static FILE *log_file; +static int log_level; -void log_event_cb(int, const char *); -void log_vwrite(const char *, va_list); +static void log_event_cb(int, const char *); +static void log_vwrite(const char *, va_list); /* Log callback for libevent. */ -void +static void log_event_cb(__unused int severity, const char *msg) { log_debug("%s", msg); } +/* Increment log level. */ +void +log_add_level(void) +{ + log_level++; +} + +/* Get log level. */ +int +log_get_level(void) +{ + return (log_level); +} + /* Open logging to file. */ void -log_open(const char *path) +log_open(const char *name) { + char *path; + + if (log_level == 0) + return; + if (log_file != NULL) fclose(log_file); + xasprintf(&path, "tmux-%s-%ld.log", name, (long)getpid()); log_file = fopen(path, "w"); + free(path); if (log_file == NULL) return; @@ -65,7 +88,7 @@ log_close(void) } /* Write a log message. */ -void +static void log_vwrite(const char *msg, va_list ap) { char *fmt, *out; |