Maarten Lankhorst : dsound: Remove some more unused variables.

Alexandre Julliard julliard at wine.codeweavers.com
Mon Jul 9 10:24:56 CDT 2007


Module: wine
Branch: master
Commit: 2b8a1815e6e962381a0886fd850f9c38d4b26c90
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=2b8a1815e6e962381a0886fd850f9c38d4b26c90

Author: Maarten Lankhorst <m.b.lankhorst at gmail.com>
Date:   Fri Jul  6 22:57:48 2007 +0200

dsound: Remove some more unused variables.

---

 dlls/dsound/buffer.c         |    6 +-----
 dlls/dsound/dsound_private.h |    6 +++---
 dlls/dsound/mixer.c          |   31 +++++++++++++------------------
 3 files changed, 17 insertions(+), 26 deletions(-)

diff --git a/dlls/dsound/buffer.c b/dlls/dsound/buffer.c
index 7a45679..50959e2 100644
--- a/dlls/dsound/buffer.c
+++ b/dlls/dsound/buffer.c
@@ -355,7 +355,7 @@ static HRESULT WINAPI IDirectSoundBufferImpl_Stop(LPDIRECTSOUNDBUFFER8 iface)
 		else
 			This->state = STATE_STOPPED;
 	}
-	DSOUND_CheckEvent(This, 0);
+	DSOUND_CheckEvent(This, 0, 0);
 
 	LeaveCriticalSection(&(This->lock));
 	/* **** */
@@ -1030,8 +1030,6 @@ HRESULT IDirectSoundBufferImpl_Create(
 	dsb->lpVtbl = &dsbvt;
 	dsb->iks = NULL;
 
-	dsb->remix_pos = 0;
-
 	/* size depends on version */
 	CopyMemory(&dsb->dsbd, dsbd, dsbd->dwSize);
 
@@ -1135,7 +1133,6 @@ HRESULT IDirectSoundBufferImpl_Create(
 
 	/* It's not necessary to initialize values to zero since */
 	/* we allocated this structure with HEAP_ZERO_MEMORY... */
-	dsb->playpos = 0;
 	dsb->buf_mixpos = 0;
 	dsb->state = STATE_STOPPED;
 
@@ -1285,7 +1282,6 @@ HRESULT IDirectSoundBufferImpl_Duplicate(
 
     dsb->ref = 0;
     dsb->state = STATE_STOPPED;
-    dsb->playpos = 0;
     dsb->buf_mixpos = 0;
     dsb->device = device;
     dsb->ds3db = NULL;
diff --git a/dlls/dsound/dsound_private.h b/dlls/dsound/dsound_private.h
index 56fbd0c..386ed96 100644
--- a/dlls/dsound/dsound_private.h
+++ b/dlls/dsound/dsound_private.h
@@ -162,7 +162,7 @@ struct IDirectSoundBufferImpl
     PWAVEFORMATEX               pwfx;
     BufferMemory*               buffer;
     DWORD                       playflags,state,leadin;
-    DWORD                       playpos,startpos,writelead,buflen;
+    DWORD                       startpos,writelead,buflen;
     DWORD                       nAvgBytesPerSec;
     DWORD                       freq;
     DSVOLUMEPAN                 volpan;
@@ -170,7 +170,7 @@ struct IDirectSoundBufferImpl
     /* used for frequency conversion (PerfectPitch) */
     ULONG                       freqAdjust, freqAcc;
     /* used for intelligent (well, sort of) prebuffering */
-    DWORD                       primary_mixpos, buf_mixpos, last_playpos, remix_pos;
+    DWORD                       primary_mixpos, buf_mixpos, last_playpos;
 
     /* IDirectSoundNotifyImpl fields */
     IDirectSoundNotifyImpl*     notify;
@@ -433,7 +433,7 @@ DWORD DSOUND_CalcPlayPosition(IDirectSoundBufferImpl *This, DWORD pplay, DWORD p
 
 /* mixer.c */
 
-void DSOUND_CheckEvent(IDirectSoundBufferImpl *dsb, int len);
+void DSOUND_CheckEvent(IDirectSoundBufferImpl *dsb, DWORD playpos, int len);
 void DSOUND_RecalcVolPan(PDSVOLUMEPAN volpan);
 void DSOUND_AmpFactorToVolPan(PDSVOLUMEPAN volpan);
 void DSOUND_RecalcFormat(IDirectSoundBufferImpl *dsb);
diff --git a/dlls/dsound/mixer.c b/dlls/dsound/mixer.c
index 96c7c42..7b4864e 100644
--- a/dlls/dsound/mixer.c
+++ b/dlls/dsound/mixer.c
@@ -106,7 +106,7 @@ void DSOUND_RecalcFormat(IDirectSoundBufferImpl *dsb)
  * "last played" position for the buffer (i.e. dsb->playpos) and "len" bytes
  * beyond that position.
  */
-void DSOUND_CheckEvent(IDirectSoundBufferImpl *dsb, int len)
+void DSOUND_CheckEvent(IDirectSoundBufferImpl *dsb, DWORD playpos, int len)
 {
 	int			i;
 	DWORD			offset;
@@ -117,7 +117,7 @@ void DSOUND_CheckEvent(IDirectSoundBufferImpl *dsb, int len)
 		return;
 
 	TRACE("(%p) buflen = %d, playpos = %d, len = %d\n",
-		dsb, dsb->buflen, dsb->playpos, len);
+		dsb, dsb->buflen, playpos, len);
 	for (i = 0; i < dsb->nrofnotifies ; i++) {
 		event = dsb->notifies + i;
 		offset = event->dwOffset;
@@ -136,14 +136,14 @@ void DSOUND_CheckEvent(IDirectSoundBufferImpl *dsb, int len)
 			} else
 				return;
 		}
-		if ((dsb->playpos + len) >= dsb->buflen) {
-			if ((offset < ((dsb->playpos + len) % dsb->buflen)) ||
-			    (offset >= dsb->playpos)) {
+		if ((playpos + len) >= dsb->buflen) {
+			if ((offset < ((playpos + len) % dsb->buflen)) ||
+			    (offset >= playpos)) {
 				TRACE("signalled event %p (%d)\n", event->hEventNotify, i);
 				SetEvent(event->hEventNotify);
 			}
 		} else {
-			if ((offset >= dsb->playpos) && (offset < (dsb->playpos + len))) {
+			if ((offset >= playpos) && (offset < (playpos + len))) {
 				TRACE("signalled event %p (%d)\n", event->hEventNotify, i);
 				SetEvent(event->hEventNotify);
 			}
@@ -594,15 +594,6 @@ static DWORD DSOUND_MixOne(IDirectSoundBufferImpl *dsb, DWORD playpos, DWORD wri
 	TRACE("writepos=%d, buf_mixpos=%d, primary_mixpos=%d, mixlen=%d\n", writepos, dsb->buf_mixpos, dsb->primary_mixpos, mixlen);
 	TRACE("looping=%d, startpos=%d, leadin=%d, buflen=%d\n", dsb->playflags, dsb->startpos, dsb->leadin, dsb->buflen);
 
-	/* check for notification positions */
-	if (dsb->dsbd.dwFlags & DSBCAPS_CTRLPOSITIONNOTIFY &&
-	    dsb->state != STATE_STARTING) {
-		DSOUND_CheckEvent(dsb, mixlen);
-	}
-
-	/* save write position for non-GETCURRENTPOSITION2... */
-	dsb->playpos = writepos;
-
 	/* calculate how much pre-buffering has already been done for this buffer */
 	primary_done = DSOUND_BufPtrDiff(dsb->device->buflen, dsb->primary_mixpos, writepos);
 
@@ -627,6 +618,12 @@ static DWORD DSOUND_MixOne(IDirectSoundBufferImpl *dsb, DWORD playpos, DWORD wri
 	/* mix more data */
 	mixlen = DSOUND_MixInBuffer(dsb, dsb->primary_mixpos, mixlen);
 
+	/* check for notification positions */
+	if (dsb->dsbd.dwFlags & DSBCAPS_CTRLPOSITIONNOTIFY &&
+	    dsb->state != STATE_STARTING) {
+		DSOUND_CheckEvent(dsb, writepos, mixlen);
+	}
+
 	/* increase mix position */
 	dsb->primary_mixpos += mixlen;
 	dsb->primary_mixpos %= dsb->device->buflen;
@@ -644,10 +641,8 @@ static DWORD DSOUND_MixOne(IDirectSoundBufferImpl *dsb, DWORD playpos, DWORD wri
 		TRACE("Buffer reached end. Stopped\n");
 
 		dsb->state = STATE_STOPPED;
-		dsb->playpos = 0;
 		dsb->buf_mixpos = 0;
 		dsb->leadin = FALSE;
-		DSOUND_CheckEvent(dsb, mixlen);
 	}
 
 	/* Report back the total prebuffered amount for this buffer */
@@ -692,7 +687,7 @@ static DWORD DSOUND_MixToPrimary(const DirectSoundDevice *device, DWORD playpos,
 			/* if buffer is stopping it is stopped now */
 			if (dsb->state == STATE_STOPPING) {
 				dsb->state = STATE_STOPPED;
-				DSOUND_CheckEvent(dsb, 0);
+				DSOUND_CheckEvent(dsb, 0, 0);
 			} else {
 
 				/* if recovering, reset the mix position */




More information about the wine-cvs mailing list