Andrew Eikum : msacm32: Don't clear DONE flag in Un,PrepareHeader.

Alexandre Julliard julliard at winehq.org
Fri Jan 10 14:44:55 CST 2014


Module: wine
Branch: stable
Commit: 91885649dba90a90bdb5bd10ac659ca6354743b9
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=91885649dba90a90bdb5bd10ac659ca6354743b9

Author: Andrew Eikum <aeikum at codeweavers.com>
Date:   Mon Nov  4 10:06:02 2013 -0600

msacm32: Don't clear DONE flag in Un,PrepareHeader.

(cherry picked from commit 3cb2ddfd09d5986614e028aa413e71e7624d2470)

---

 dlls/msacm32/stream.c |    7 ++-----
 1 file changed, 2 insertions(+), 5 deletions(-)

diff --git a/dlls/msacm32/stream.c b/dlls/msacm32/stream.c
index 0b336dd..bdfc3cc 100644
--- a/dlls/msacm32/stream.c
+++ b/dlls/msacm32/stream.c
@@ -311,9 +311,6 @@ MMRESULT WINAPI acmStreamPrepareHeader(HACMSTREAM has, PACMSTREAMHEADER pash,
     if (fdwPrepare)
 	ret = MMSYSERR_INVALFLAG;
 
-    if (pash->fdwStatus & ACMSTREAMHEADER_STATUSF_DONE)
-	return MMSYSERR_NOERROR;
-
     /* Note: the ACMSTREAMHEADER and ACMDRVSTREAMHEADER structs are of same
      * size. some fields are private to msacm internals, and are exposed
      * in ACMSTREAMHEADER in the dwReservedDriver array
@@ -334,7 +331,7 @@ MMRESULT WINAPI acmStreamPrepareHeader(HACMSTREAM has, PACMSTREAMHEADER pash,
     ret = MSACM_Message((HACMDRIVER)was->pDrv, ACMDM_STREAM_PREPARE, (LPARAM)&was->drvInst, (LPARAM)padsh);
     if (ret == MMSYSERR_NOERROR || ret == MMSYSERR_NOTSUPPORTED) {
 	ret = MMSYSERR_NOERROR;
-	padsh->fdwStatus &= ~(ACMSTREAMHEADER_STATUSF_DONE|ACMSTREAMHEADER_STATUSF_INQUEUE);
+	padsh->fdwStatus &= ~ACMSTREAMHEADER_STATUSF_INQUEUE;
 	padsh->fdwStatus |= ACMSTREAMHEADER_STATUSF_PREPARED;
 	padsh->fdwPrepared = padsh->fdwStatus;
 	padsh->dwPrepared = 0;
@@ -477,7 +474,7 @@ MMRESULT WINAPI acmStreamUnprepareHeader(HACMSTREAM has, PACMSTREAMHEADER pash,
     ret = MSACM_Message((HACMDRIVER)was->pDrv, ACMDM_STREAM_UNPREPARE, (LPARAM)&was->drvInst, (LPARAM)padsh);
     if (ret == MMSYSERR_NOERROR || ret == MMSYSERR_NOTSUPPORTED) {
 	ret = MMSYSERR_NOERROR;
-	padsh->fdwStatus &= ~(ACMSTREAMHEADER_STATUSF_DONE|ACMSTREAMHEADER_STATUSF_INQUEUE|ACMSTREAMHEADER_STATUSF_PREPARED);
+	padsh->fdwStatus &= ~(ACMSTREAMHEADER_STATUSF_INQUEUE|ACMSTREAMHEADER_STATUSF_PREPARED);
     }
     TRACE("=> (%d)\n", ret);
     return ret;




More information about the wine-cvs mailing list