blob: faf9536a7d529ee488c95d40c82b342b402c2a99 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
|
#include "stdio_impl.h"
static size_t wrap_write(FILE *f, const unsigned char *buf, size_t len)
{
return __stdio_write(f, buf, len);
}
int vdprintf(int fd, const char *fmt, va_list ap)
{
int r;
unsigned char buf[BUFSIZ];
FILE f = {
.fd = fd, .lbf = EOF, .write = wrap_write,
.buf = buf+UNGET, .buf_size = sizeof buf - UNGET,
.lock = -1
};
r = vfprintf(&f, fmt, ap);
return fflush(&f) ? EOF : r;
}
|