From dc8d856c7abbe693fa3b91a7dd56513cf572fe03 Mon Sep 17 00:00:00 2001 From: Eric Pouech Date: Wed, 22 Sep 1999 16:47:47 +0000 Subject: [PATCH] No longer checking for correct iData in code. --- multimedia/time.c | 31 +++++++++++++------------------ 1 file changed, 13 insertions(+), 18 deletions(-) diff --git a/multimedia/time.c b/multimedia/time.c index 4502cf16329..be881fe66be 100644 --- a/multimedia/time.c +++ b/multimedia/time.c @@ -124,7 +124,7 @@ static LPWINE_MM_IDATA MULTIMEDIA_MMTimeStart(void) { LPWINE_MM_IDATA iData = MULTIMEDIA_GetIData(); - if (!iData || IsBadWritePtr(iData, sizeof(WINE_MM_IDATA))) { + if (IsBadWritePtr(iData, sizeof(WINE_MM_IDATA))) { ERR("iData is not correctly set, please report. Expect failure.\n"); return 0; } @@ -149,18 +149,13 @@ static LPWINE_MM_IDATA MULTIMEDIA_MMTimeStart(void) */ MMRESULT WINAPI timeGetSystemTime(LPMMTIME lpTime, UINT wSize) { - LPWINE_MM_IDATA iData; - TRACE("(%p, %u);\n", lpTime, wSize); if (wSize >= sizeof(*lpTime)) { - iData = MULTIMEDIA_MMTimeStart(); - if (!iData) - return MMSYSERR_NOMEM; lpTime->wType = TIME_MS; - lpTime->u.ms = iData->mmSysTimeMS; + lpTime->u.ms = MULTIMEDIA_MMTimeStart()->mmSysTimeMS; - TRACE("=> %lu\n", iData->mmSysTimeMS); + TRACE("=> %lu\n", lpTime->u.ms); } return 0; @@ -171,18 +166,13 @@ MMRESULT WINAPI timeGetSystemTime(LPMMTIME lpTime, UINT wSize) */ MMRESULT16 WINAPI timeGetSystemTime16(LPMMTIME16 lpTime, UINT16 wSize) { - LPWINE_MM_IDATA iData; - TRACE("(%p, %u);\n", lpTime, wSize); if (wSize >= sizeof(*lpTime)) { - iData = MULTIMEDIA_MMTimeStart(); - if (!iData) - return MMSYSERR_NOMEM; lpTime->wType = TIME_MS; - lpTime->u.ms = iData->mmSysTimeMS; + lpTime->u.ms = MULTIMEDIA_MMTimeStart()->mmSysTimeMS; - TRACE("=> %lu\n", iData->mmSysTimeMS); + TRACE("=> %lu\n", lpTime->u.ms); } return 0; @@ -210,9 +200,6 @@ static WORD timeSetEventInternal(UINT wDelay, UINT wResol, iData = MULTIMEDIA_MMTimeStart(); - if (!iData) - return 0; - lpNewTimer->uCurTime = wDelay; lpNewTimer->wDelay = wDelay; lpNewTimer->wResol = wResol; @@ -381,5 +368,13 @@ MMRESULT16 WINAPI timeEndPeriod16(UINT16 wPeriod) */ DWORD WINAPI timeGetTime(void) { + /* FIXME: releasing the win16 lock here is a temporary hack (I hope) + * that lets mciavi.drv run correctly + */ + if ( _ConfirmWin16Lock() ) { + SYSLEVEL_ReleaseWin16Lock(); + SYSLEVEL_RestoreWin16Lock(); + } + return MULTIMEDIA_MMTimeStart()->mmSysTimeMS; }