mirror of https://git.ffmpeg.org/ffmpeg.git
avutil/log: use thread wrappers for the locking functionality
w32threads and os2threads both support static mutex initialization now, so don't limit it to pthreads only. Reviewed-by: wm4 <nfxjfg@googlemail.com> Signed-off-by: James Almer <jamrial@gmail.com>
This commit is contained in:
parent
414a49d671
commit
8d9c9775b2
|
@ -39,11 +39,9 @@
|
|||
#include "common.h"
|
||||
#include "internal.h"
|
||||
#include "log.h"
|
||||
#include "thread.h"
|
||||
|
||||
#if HAVE_PTHREADS
|
||||
#include <pthread.h>
|
||||
static pthread_mutex_t mutex = PTHREAD_MUTEX_INITIALIZER;
|
||||
#endif
|
||||
static AVMutex mutex = AV_MUTEX_INITIALIZER;
|
||||
|
||||
#define LINE_SZ 1024
|
||||
|
||||
|
@ -317,9 +315,7 @@ void av_log_default_callback(void* ptr, int level, const char* fmt, va_list vl)
|
|||
|
||||
if (level > av_log_level)
|
||||
return;
|
||||
#if HAVE_PTHREADS
|
||||
pthread_mutex_lock(&mutex);
|
||||
#endif
|
||||
ff_mutex_lock(&mutex);
|
||||
|
||||
format_line(ptr, level, fmt, vl, part, &print_prefix, type);
|
||||
snprintf(line, sizeof(line), "%s%s%s%s", part[0].str, part[1].str, part[2].str, part[3].str);
|
||||
|
@ -356,9 +352,7 @@ void av_log_default_callback(void* ptr, int level, const char* fmt, va_list vl)
|
|||
#endif
|
||||
end:
|
||||
av_bprint_finalize(part+3, NULL);
|
||||
#if HAVE_PTHREADS
|
||||
pthread_mutex_unlock(&mutex);
|
||||
#endif
|
||||
ff_mutex_unlock(&mutex);
|
||||
}
|
||||
|
||||
static void (*av_log_callback)(void*, int, const char*, va_list) =
|
||||
|
|
Loading…
Reference in New Issue