summaryrefslogtreecommitdiffstats
path: root/src/pulsecore/poll.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/pulsecore/poll.c')
-rw-r--r--src/pulsecore/poll.c11
1 files changed, 8 insertions, 3 deletions
diff --git a/src/pulsecore/poll.c b/src/pulsecore/poll.c
index 46a69c5f..1dcace8b 100644
--- a/src/pulsecore/poll.c
+++ b/src/pulsecore/poll.c
@@ -43,13 +43,18 @@
#include "winsock.h"
-#ifndef HAVE_POLL_H
-
#include <pulsecore/core-util.h>
+#include <pulse/util.h>
#include "poll.h"
-int poll (struct pollfd *fds, unsigned long int nfds, int timeout) {
+/* Mac OSX fails to implement poll() in a working way since 10.4. IOW, for
+ * several years. We need to enable a dirty workaround and emulate that call
+ * with select(), just like for Windows. sic! */
+
+#if !defined(HAVE_POLL_H) || defined(OS_IS_DARWIN)
+
+int pa_poll (struct pollfd *fds, unsigned long int nfds, int timeout) {
struct timeval tv;
fd_set rset, wset, xset;
struct pollfd *f;