#include <windows.h>
#include <process.h>
+#include "libavutil/attributes.h"
#include "libavutil/internal.h"
#include "libavutil/mem.h"
#define WaitForSingleObject(a, b) WaitForSingleObjectEx(a, b, FALSE)
#endif
-static unsigned __stdcall attribute_align_arg win32thread_worker(void *arg)
+static av_unused unsigned __stdcall attribute_align_arg win32thread_worker(void *arg)
{
pthread_t *h = arg;
h->ret = h->func(h->arg);
return 0;
}
-static int pthread_create(pthread_t *thread, const void *unused_attr,
- void *(*start_routine)(void*), void *arg)
+static av_unused int pthread_create(pthread_t *thread, const void *unused_attr,
+ void *(*start_routine)(void*), void *arg)
{
thread->func = start_routine;
thread->arg = arg;
return !thread->handle;
}
-static void pthread_join(pthread_t thread, void **value_ptr)
+static av_unused void pthread_join(pthread_t thread, void **value_ptr)
{
DWORD ret = WaitForSingleObject(thread.handle, INFINITE);
if (ret != WAIT_OBJECT_0)
volatile int is_broadcast;
} win32_cond_t;
-static void pthread_cond_init(pthread_cond_t *cond, const void *unused_attr)
+static av_unused void pthread_cond_init(pthread_cond_t *cond, const void *unused_attr)
{
win32_cond_t *win32_cond = NULL;
if (cond_init) {
pthread_mutex_init(&win32_cond->mtx_broadcast, NULL);
}
-static void pthread_cond_destroy(pthread_cond_t *cond)
+static av_unused void pthread_cond_destroy(pthread_cond_t *cond)
{
win32_cond_t *win32_cond = cond->ptr;
/* native condition variables do not destroy */
cond->ptr = NULL;
}
-static void pthread_cond_broadcast(pthread_cond_t *cond)
+static av_unused void pthread_cond_broadcast(pthread_cond_t *cond)
{
win32_cond_t *win32_cond = cond->ptr;
int have_waiter;
pthread_mutex_unlock(&win32_cond->mtx_broadcast);
}
-static int pthread_cond_wait(pthread_cond_t *cond, pthread_mutex_t *mutex)
+static av_unused int pthread_cond_wait(pthread_cond_t *cond, pthread_mutex_t *mutex)
{
win32_cond_t *win32_cond = cond->ptr;
int last_waiter;
return pthread_mutex_lock(mutex);
}
-static void pthread_cond_signal(pthread_cond_t *cond)
+static av_unused void pthread_cond_signal(pthread_cond_t *cond)
{
win32_cond_t *win32_cond = cond->ptr;
int have_waiter;
pthread_mutex_unlock(&win32_cond->mtx_broadcast);
}
-static void w32thread_init(void)
+static av_unused void w32thread_init(void)
{
#if _WIN32_WINNT < 0x0600
HANDLE kernel_dll = GetModuleHandle(TEXT("kernel32.dll"));