[WINEOSS] use default prepare functions

Robert Reif reif at earthlink.net
Thu Mar 17 07:40:49 CST 2005


Fall back to default header prepare and unprepare functions.

A driver only needs to support prepare and unprepare functions
when it is doing something special like allocating a DMA buffer for
each header.  Since we don't do anything special, just fall back
to the default functions.  Removes redundant code.
-------------- next part --------------
Index: dlls/winmm/wineoss/audio.c
===================================================================
RCS file: /home/wine/wine/dlls/winmm/wineoss/audio.c,v
retrieving revision 1.158
diff -u -p -r1.158 audio.c
--- dlls/winmm/wineoss/audio.c	4 Mar 2005 12:38:37 -0000	1.158
+++ dlls/winmm/wineoss/audio.c	17 Mar 2005 13:32:11 -0000
@@ -2054,47 +2054,6 @@ static DWORD wodWrite(WORD wDevID, LPWAV
 }
 
 /**************************************************************************
- * 				wodPrepare			[internal]
- */
-static DWORD wodPrepare(WORD wDevID, LPWAVEHDR lpWaveHdr, DWORD dwSize)
-{
-    TRACE("(%u, %p, %08lX);\n", wDevID, lpWaveHdr, dwSize);
-
-    if (wDevID >= numOutDev) {
-	WARN("bad device ID !\n");
-	return MMSYSERR_BADDEVICEID;
-    }
-
-    if (lpWaveHdr->dwFlags & WHDR_INQUEUE)
-	return WAVERR_STILLPLAYING;
-
-    lpWaveHdr->dwFlags |= WHDR_PREPARED;
-    lpWaveHdr->dwFlags &= ~WHDR_DONE;
-    return MMSYSERR_NOERROR;
-}
-
-/**************************************************************************
- * 				wodUnprepare			[internal]
- */
-static DWORD wodUnprepare(WORD wDevID, LPWAVEHDR lpWaveHdr, DWORD dwSize)
-{
-    TRACE("(%u, %p, %08lX);\n", wDevID, lpWaveHdr, dwSize);
-
-    if (wDevID >= numOutDev) {
-	WARN("bad device ID !\n");
-	return MMSYSERR_BADDEVICEID;
-    }
-
-    if (lpWaveHdr->dwFlags & WHDR_INQUEUE)
-	return WAVERR_STILLPLAYING;
-
-    lpWaveHdr->dwFlags &= ~WHDR_PREPARED;
-    lpWaveHdr->dwFlags |= WHDR_DONE;
-
-    return MMSYSERR_NOERROR;
-}
-
-/**************************************************************************
  * 			wodPause				[internal]
  */
 static DWORD wodPause(WORD wDevID)
@@ -2303,8 +2262,8 @@ DWORD WINAPI OSS_wodMessage(UINT wDevID,
     case WODM_PAUSE:	 	return wodPause		(wDevID);
     case WODM_GETPOS:	 	return wodGetPosition	(wDevID, (LPMMTIME)dwParam1, 		dwParam2);
     case WODM_BREAKLOOP: 	return wodBreakLoop     (wDevID);
-    case WODM_PREPARE:	 	return wodPrepare	(wDevID, (LPWAVEHDR)dwParam1, 		dwParam2);
-    case WODM_UNPREPARE: 	return wodUnprepare	(wDevID, (LPWAVEHDR)dwParam1, 		dwParam2);
+    case WODM_PREPARE:	 	return MMSYSERR_NOTSUPPORTED;
+    case WODM_UNPREPARE: 	return MMSYSERR_NOTSUPPORTED;
     case WODM_GETDEVCAPS:	return wodGetDevCaps	(wDevID, (LPWAVEOUTCAPSW)dwParam1,	dwParam2);
     case WODM_GETNUMDEVS:	return numOutDev;
     case WODM_GETPITCH:	 	return MMSYSERR_NOTSUPPORTED;
@@ -2925,42 +2884,6 @@ static DWORD widAddBuffer(WORD wDevID, L
 }
 
 /**************************************************************************
- * 				widPrepare			[internal]
- */
-static DWORD widPrepare(WORD wDevID, LPWAVEHDR lpWaveHdr, DWORD dwSize)
-{
-    TRACE("(%u, %p, %08lX);\n", wDevID, lpWaveHdr, dwSize);
-
-    if (wDevID >= numInDev) return MMSYSERR_INVALHANDLE;
-
-    if (lpWaveHdr->dwFlags & WHDR_INQUEUE)
-	return WAVERR_STILLPLAYING;
-
-    lpWaveHdr->dwFlags |= WHDR_PREPARED;
-    lpWaveHdr->dwFlags &= ~WHDR_DONE;
-    lpWaveHdr->dwBytesRecorded = 0;
-    TRACE("header prepared !\n");
-    return MMSYSERR_NOERROR;
-}
-
-/**************************************************************************
- * 				widUnprepare			[internal]
- */
-static DWORD widUnprepare(WORD wDevID, LPWAVEHDR lpWaveHdr, DWORD dwSize)
-{
-    TRACE("(%u, %p, %08lX);\n", wDevID, lpWaveHdr, dwSize);
-    if (wDevID >= numInDev) return MMSYSERR_INVALHANDLE;
-
-    if (lpWaveHdr->dwFlags & WHDR_INQUEUE)
-	return WAVERR_STILLPLAYING;
-
-    lpWaveHdr->dwFlags &= ~WHDR_PREPARED;
-    lpWaveHdr->dwFlags |= WHDR_DONE;
-
-    return MMSYSERR_NOERROR;
-}
-
-/**************************************************************************
  * 			widStart				[internal]
  */
 static DWORD widStart(WORD wDevID)
@@ -3052,8 +2975,8 @@ DWORD WINAPI OSS_widMessage(WORD wDevID,
     case WIDM_OPEN:		return widOpen       (wDevID, (LPWAVEOPENDESC)dwParam1, dwParam2);
     case WIDM_CLOSE:		return widClose      (wDevID);
     case WIDM_ADDBUFFER:	return widAddBuffer  (wDevID, (LPWAVEHDR)dwParam1, dwParam2);
-    case WIDM_PREPARE:		return widPrepare    (wDevID, (LPWAVEHDR)dwParam1, dwParam2);
-    case WIDM_UNPREPARE:	return widUnprepare  (wDevID, (LPWAVEHDR)dwParam1, dwParam2);
+    case WIDM_PREPARE:		return MMSYSERR_NOTSUPPORTED;
+    case WIDM_UNPREPARE:	return MMSYSERR_NOTSUPPORTED;
     case WIDM_GETDEVCAPS:	return widGetDevCaps (wDevID, (LPWAVEINCAPSW)dwParam1, dwParam2);
     case WIDM_GETNUMDEVS:	return numInDev;
     case WIDM_GETPOS:		return widGetPosition(wDevID, (LPMMTIME)dwParam1, dwParam2);


More information about the wine-patches mailing list