mirror of
https://github.com/tmux/tmux.git
synced 2024-12-12 17:38:48 +00:00
Pass logging through vis(3).
This commit is contained in:
parent
fa3d4fab85
commit
364a885b0c
16
log.c
16
log.c
@ -22,6 +22,7 @@
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#include <vis.h>
|
||||
|
||||
#include "tmux.h"
|
||||
|
||||
@ -66,19 +67,24 @@ log_close(void)
|
||||
void
|
||||
log_vwrite(const char *msg, va_list ap)
|
||||
{
|
||||
char *fmt;
|
||||
char *fmt, *out;
|
||||
struct timeval tv;
|
||||
|
||||
if (log_file == NULL)
|
||||
return;
|
||||
|
||||
gettimeofday(&tv, NULL);
|
||||
if (asprintf(&fmt, "%lld.%06d %s\n", (long long)tv.tv_sec,
|
||||
(int)tv.tv_usec, msg) == -1)
|
||||
if (vasprintf(&fmt, msg, ap) == -1)
|
||||
exit(1);
|
||||
if (vfprintf(log_file, fmt, ap) == -1)
|
||||
if (stravis(&out, fmt, VIS_OCTAL|VIS_CSTYLE|VIS_TAB|VIS_NL) == -1)
|
||||
exit(1);
|
||||
|
||||
gettimeofday(&tv, NULL);
|
||||
if (fprintf(log_file, "%lld.%06d %s\n", (long long)tv.tv_sec,
|
||||
(int)tv.tv_usec, out) == -1)
|
||||
exit(1);
|
||||
fflush(log_file);
|
||||
|
||||
free(out);
|
||||
free(fmt);
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user