Change-Id: I3ccc2ba35ee8db3d62eb229c736e65b2305184e3
Signed-off-by: José Bollo <jose.bollo@iot.bzh>
#include <errno.h>
#include <string.h>
#include <sys/uio.h>
#include <errno.h>
#include <string.h>
#include <sys/uio.h>
static const char *appname;
static const char *appname;
static const char chars[] = { '\n', '?', ':', ' ', '[', ',', ']' };
static const char chars[] = { '\n', '?', ':', ' ', '[', ',', ']' };
+static pthread_mutex_t mutex = PTHREAD_MUTEX_INITIALIZER;
+
static void _vverbose_(int loglevel, const char *file, int line, const char *function, const char *fmt, va_list args)
{
char buffer[4000];
static void _vverbose_(int loglevel, const char *file, int line, const char *function, const char *fmt, va_list args)
{
char buffer[4000];
iov[n].iov_base = (void*)&chars[0];
iov[n++].iov_len = 1;
iov[n].iov_base = (void*)&chars[0];
iov[n++].iov_len = 1;
+ pthread_mutex_lock(&mutex);
writev(STDERR_FILENO, iov, n);
writev(STDERR_FILENO, iov, n);
+ pthread_mutex_unlock(&mutex);