mirror of
https://github.com/tmux/tmux.git
synced 2024-12-13 01:48:47 +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 <stdio.h>
|
||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
|
#include <vis.h>
|
||||||
|
|
||||||
#include "tmux.h"
|
#include "tmux.h"
|
||||||
|
|
||||||
@ -66,19 +67,24 @@ log_close(void)
|
|||||||
void
|
void
|
||||||
log_vwrite(const char *msg, va_list ap)
|
log_vwrite(const char *msg, va_list ap)
|
||||||
{
|
{
|
||||||
char *fmt;
|
char *fmt, *out;
|
||||||
struct timeval tv;
|
struct timeval tv;
|
||||||
|
|
||||||
if (log_file == NULL)
|
if (log_file == NULL)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
gettimeofday(&tv, NULL);
|
if (vasprintf(&fmt, msg, ap) == -1)
|
||||||
if (asprintf(&fmt, "%lld.%06d %s\n", (long long)tv.tv_sec,
|
|
||||||
(int)tv.tv_usec, msg) == -1)
|
|
||||||
exit(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);
|
exit(1);
|
||||||
fflush(log_file);
|
fflush(log_file);
|
||||||
|
|
||||||
|
free(out);
|
||||||
free(fmt);
|
free(fmt);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user