aboutsummaryrefslogtreecommitdiff
path: root/include/glib-compat.h
diff options
context:
space:
mode:
authorStefan Hajnoczi <stefanha@redhat.com>2014-05-02 18:35:56 +0400
committerMichael Tokarev <mjt@tls.msk.ru>2014-05-07 21:00:43 +0400
commitf95c967a7950797109d2a96fcfa2e3a2899f2c99 (patch)
tree05865cf811a1d7b2a97fac1d24e2d8aff8b7bc42 /include/glib-compat.h
parentf33cc84dd4af7776309d118412df008ec4108a57 (diff)
glib: move g_poll() replacement into glib-compat.h
We have a dedicated header file for wrappers to smooth over glib version differences. Move the g_poll() definition into glib-compat.h for consistency. Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com> Signed-off-by: Michael Tokarev <mjt@tls.msk.ru> Cc: qemu-trivial@nongnu.org
Diffstat (limited to 'include/glib-compat.h')
-rw-r--r--include/glib-compat.h12
1 files changed, 12 insertions, 0 deletions
diff --git a/include/glib-compat.h b/include/glib-compat.h
index 8aa77afd62..8d25900700 100644
--- a/include/glib-compat.h
+++ b/include/glib-compat.h
@@ -24,4 +24,16 @@ static inline guint g_timeout_add_seconds(guint interval, GSourceFunc function,
}
#endif
+#if !GLIB_CHECK_VERSION(2, 20, 0)
+/*
+ * Glib before 2.20.0 doesn't implement g_poll, so wrap it to compile properly
+ * on older systems.
+ */
+static inline gint g_poll(GPollFD *fds, guint nfds, gint timeout)
+{
+ GMainContext *ctx = g_main_context_default();
+ return g_main_context_get_poll_func(ctx)(fds, nfds, timeout);
+}
+#endif
+
#endif