http://bugs.winehq.org/show_bug.cgi?id=28056
--- Comment #35 from Andrew Eikum aeikum@codeweavers.com 2011-10-06 10:08:25 CDT --- Created attachment 36739 --> http://bugs.winehq.org/attachment.cgi?id=36739 wineoss.drv: Only write as much data as will fit into the OSS buffer
Here's a patch that uses GETOSPACE to determine how much space is available in the OSS buffer and limits its writes to be no larger than the available space. This should prevent the need for O_NONBLOCK. I think all of Jorg's patches are in, so to test this patch you should only need current Wine Git with only this patch applied. If you are testing a dsound application, you might also find this patch from Bug 28517 helpful (it will be in Wine Git shortly) http://bugs.winehq.org/attachment.cgi?id=36712.