DSOUND: recover from mismatch between time spanned by primary buffer being longer than the one spanned by secondary buffer

Alex Villací­s Lasso a_villacis at palosanto.com
Mon Jun 25 13:06:56 CDT 2007


Found when trying to reach failing assertion in another dsound test. As 
far as I could deduce from the symptoms, the device buffer spans a 
longer time than the secondary buffer, and if left unchecked, this 
triggers the "Bad length in CalcPlayPosition" message. I don't really 
know if such a mismatch should be expected or whether it is an actual 
bug in dsound, but here is a quick fix for it.

Changelog:
* Recover from mismatch between time spanned by device buffer and 
secondary buffer

-- 
perl -e '$x=2.4;print sprintf("%.0f + %.0f = %.0f\n",$x,$x,$x+$x);'

-------------- next part --------------
A non-text attachment was scrubbed...
Name: wine-dsound-buffer-CalcPlayPosition-recover-overrun.patch
Type: text/x-patch
Size: 788 bytes
Desc: not available
Url : http://www.winehq.org/pipermail/wine-patches/attachments/20070625/db8091a6/wine-dsound-buffer-CalcPlayPosition-recover-overrun.bin


More information about the wine-patches mailing list