From 56bc1ce98c8e529baabadc0df4644818d0d3c91d Mon Sep 17 00:00:00 2001 From: Gwenole Beauchesne Date: Thu, 31 Jan 2013 11:30:12 +0100 Subject: [PATCH] glibcompat: add replacement for g_async_queue_timeout_pop(). g_async_queue_timeout_pop() appeared in glib 2.31.18. Implement it as g_async_queue_timed_pop() with a GTimeVal as the final time to wait for new data to arrive in the queue. --- gst-libs/gst/vaapi/glibcompat.h | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/gst-libs/gst/vaapi/glibcompat.h b/gst-libs/gst/vaapi/glibcompat.h index 6c9a8aa..24057f8 100644 --- a/gst-libs/gst/vaapi/glibcompat.h +++ b/gst-libs/gst/vaapi/glibcompat.h @@ -135,6 +135,18 @@ g_cond_wait_until(GCompatCond *cond, GStaticMutex *mutex, gint64 end_time) #define g_cond_wait(cond, mutex) g_compat_cond_wait(cond, mutex) #endif +#if !GLIB_CHECK_VERSION(2,31,18) +static inline gpointer +g_async_queue_timeout_pop(GAsyncQueue *queue, guint64 timeout) +{ + GTimeVal end_time; + + g_get_current_time(&end_time); + g_time_val_add(&end_time, timeout); + return g_async_queue_timed_pop(queue, &end_time); +} +#endif + #undef G_COMPAT_DEFINE #endif /* GLIB_COMPAT_H */ -- 2.7.4