winmm: MMIO_ALLOCBUF is ignored if mmioOpen gets a valid buffer.

Existing tests show that MMIO_ALLOCBUF flag is dropped if a valid buffer
is being passed to mmioOpen, that means the buffer is valid in that case.
This commit is contained in:
Dmitry Timoshkov 2008-10-21 19:27:16 +09:00 committed by Alexandre Julliard
parent 94d753c63d
commit d40e003303
1 changed files with 3 additions and 2 deletions

View File

@ -667,10 +667,11 @@ HMMIO MMIO_Open(LPSTR szFileName, MMIOINFO* refmminfo, DWORD dwOpenFlags,
refmminfo->wErrorRet = MMIO_SetBuffer(wm, refmminfo->pchBuffer, refmminfo->cchBuffer, 0);
if (refmminfo->wErrorRet != MMSYSERR_NOERROR)
goto error1;
if (wm->info.fccIOProc == FOURCC_MEM)
wm->bBufferLoaded = TRUE;
}
if (wm->info.fccIOProc == FOURCC_MEM && !(wm->info.dwFlags & MMIO_ALLOCBUF))
wm->bBufferLoaded = TRUE;
/* see mmioDosIOProc for that one */
wm->info.adwInfo[0] = refmminfo->adwInfo[0];