ChangeSet ID: 21013 CVSROOT: /opt/cvs-commit Module name: wine Changes by: julliard@winehq.org 2005/11/01 04:18:55
Modified files: dlls/dsound : mixer.c
Log message: Davin McCall davmac@davmac.org PhaseCancel subtracts secondary buffer from primary buffer, not the other way around.
Patch: http://cvs.winehq.org/patch.py?id=21013
Old revision New revision Changes Path 1.41 1.42 +8 -8 wine/dlls/dsound/mixer.c
Index: wine/dlls/dsound/mixer.c diff -u -p wine/dlls/dsound/mixer.c:1.41 wine/dlls/dsound/mixer.c:1.42 --- wine/dlls/dsound/mixer.c 1 Nov 2005 10:18:55 -0000 +++ /dev/null 1 Nov 2005 10:18:55 -0000 @@ -536,8 +536,8 @@ static void DSOUND_PhaseCancel(IDirectSo
for (i = 0; i < todo; i++) { /* 8-bit WAV is unsigned */ - field = (*ibuf++ - 128); - field -= (*obuf - 128); + field = (*obuf - 128); + field -= (*ibuf++ - 128); if (field > 127) field = 127; else if (field < -128) field = -128; *obuf++ = field + 128; @@ -549,8 +549,8 @@ static void DSOUND_PhaseCancel(IDirectSo
for (i = 0; i < todo; i++) { /* 8-bit WAV is unsigned */ - field = (*ibuf++ - 128); - field -= (*obuf - 128); + field = (*obuf - 128); + field -= (*ibuf++ - 128); if (field > 127) field = 127; else if (field < -128) field = -128; *obuf++ = field + 128; @@ -569,8 +569,8 @@ static void DSOUND_PhaseCancel(IDirectSo
for (i = 0; i < todo; i++) { /* 16-bit WAV is signed */ - field = *ibufs++; - field -= *obufs; + field = *obufs; + field -= *ibufs++; if (field > 32767) field = 32767; else if (field < -32768) field = -32768; *obufs++ = field; @@ -582,8 +582,8 @@ static void DSOUND_PhaseCancel(IDirectSo
for (i = 0; i < todo; i++) { /* 16-bit WAV is signed */ - field = *ibufs++; - field -= *obufs; + field = *obufs; + field -= *ibufs++; if (field > 32767) field = 32767; else if (field < -32768) field = -32768; *obufs++ = field;