]> code.delx.au - pulseaudio/commit
core: Proper poll() emulation to fix pacat and friends on Windows
authorThomas Martitz <kuge@rockbox.org>
Tue, 30 Oct 2012 10:35:24 +0000 (11:35 +0100)
committerArun Raghavan <arun.raghavan@collabora.co.uk>
Tue, 30 Oct 2012 10:52:18 +0000 (16:22 +0530)
commit7e344b5ff04512b7323d6c42a7bcbe5438ea4e3f
tree0810bd2df114bd62d1678c827e28d4bae375c18b
parentfb52466d6a484c13dbf459fc4e464e8485183b81
core: Proper poll() emulation to fix pacat and friends on Windows

Currently, Windows versions of pacat and friends fail because the current
poll emulation is not sufficient (it only works for socket fds).

Luckily Gnulib has a much better emulation that seems to work good enough.
The implementation has been largely copied (except a few bug fix
regarding timeout handling, to be pushed upstream) and works on pipes
and files as well. The copy has been obtained through their gnulib-tool utility,
which gives a LGPLv2.1+ licensed file.

This fixes the "Assertion (!e->dead) failed" error coming and lets pacat
and friends stream happily to/from a server (I didn't actually test parec).
src/Makefile.am
src/pulse/mainloop.c
src/pulsecore/poll-posix.c [moved from src/pulsecore/poll.c with 100% similarity]
src/pulsecore/poll-win32.c [new file with mode: 0644]