Module: wine Branch: master Commit: 56f2c5800f731e4c5e2ca38fec62e19598752985 URL: http://source.winehq.org/git/wine.git/?a=commit;h=56f2c5800f731e4c5e2ca38fec...
Author: Jörg Höhle hoehle@users.sourceforge.net Date: Sun Mar 6 22:13:18 2011 +0100
winealsa: CreateEvent and CreateThread return NULL on error, not INVALID_HANDLE_VALUE.
---
dlls/winealsa.drv/alsa.c | 6 +++--- dlls/winealsa.drv/wavein.c | 4 ++-- dlls/winealsa.drv/waveout.c | 10 ++++------ 3 files changed, 9 insertions(+), 11 deletions(-)
diff --git a/dlls/winealsa.drv/alsa.c b/dlls/winealsa.drv/alsa.c index ca775a2..122817c 100644 --- a/dlls/winealsa.drv/alsa.c +++ b/dlls/winealsa.drv/alsa.c @@ -127,7 +127,7 @@ void ALSA_WaitRingMessage(ALSA_MSG_RING* omr, DWORD sleep) */ int ALSA_AddRingMessage(ALSA_MSG_RING* omr, enum win_wm_message msg, DWORD_PTR param, BOOL wait) { - HANDLE hEvent = INVALID_HANDLE_VALUE; + HANDLE hEvent = NULL;
EnterCriticalSection(&omr->msg_crst); if ((omr->msg_toget == ((omr->msg_tosave + 1) % omr->ring_buffer_size))) @@ -151,7 +151,7 @@ int ALSA_AddRingMessage(ALSA_MSG_RING* omr, enum win_wm_message msg, DWORD_PTR p if (wait) { hEvent = CreateEventW(NULL, FALSE, FALSE, NULL); - if (hEvent == INVALID_HANDLE_VALUE) + if (!hEvent) { ERR("can't create event !?\n"); LeaveCriticalSection(&omr->msg_crst); @@ -173,7 +173,7 @@ int ALSA_AddRingMessage(ALSA_MSG_RING* omr, enum win_wm_message msg, DWORD_PTR p { omr->messages[omr->msg_tosave].msg = msg; omr->messages[omr->msg_tosave].param = param; - omr->messages[omr->msg_tosave].hEvent = INVALID_HANDLE_VALUE; + omr->messages[omr->msg_tosave].hEvent = NULL; omr->msg_tosave = (omr->msg_tosave + 1) % omr->ring_buffer_size; } LeaveCriticalSection(&omr->msg_crst); diff --git a/dlls/winealsa.drv/wavein.c b/dlls/winealsa.drv/wavein.c index 2b0630b..daf73be 100644 --- a/dlls/winealsa.drv/wavein.c +++ b/dlls/winealsa.drv/wavein.c @@ -515,7 +515,7 @@ static DWORD widOpen(WORD wDevID, LPWAVEOPENDESC lpDesc, DWORD dwFlags) SetThreadPriority(wwi->hThread, THREAD_PRIORITY_TIME_CRITICAL); WaitForSingleObject(wwi->hStartUpEvent, INFINITE); CloseHandle(wwi->hStartUpEvent); - wwi->hStartUpEvent = INVALID_HANDLE_VALUE; + wwi->hStartUpEvent = NULL;
HeapFree( GetProcessHeap(), 0, hw_params ); HeapFree( GetProcessHeap(), 0, sw_params ); @@ -554,7 +554,7 @@ static DWORD widClose(WORD wDevID) WARN("buffers still playing !\n"); ret = WAVERR_STILLPLAYING; } else { - if (wwi->hThread != INVALID_HANDLE_VALUE) { + if (wwi->hThread) { ALSA_AddRingMessage(&wwi->msgRing, WINE_WM_CLOSING, 0, TRUE); } ALSA_DestroyRingMessage(&wwi->msgRing); diff --git a/dlls/winealsa.drv/waveout.c b/dlls/winealsa.drv/waveout.c index 6ab1515..6dcd80f 100644 --- a/dlls/winealsa.drv/waveout.c +++ b/dlls/winealsa.drv/waveout.c @@ -782,18 +782,16 @@ static DWORD wodOpen(WORD wDevID, LPWAVEOPENDESC lpDesc, DWORD dwFlags)
wwo->hStartUpEvent = CreateEventW(NULL, FALSE, FALSE, NULL); wwo->hThread = CreateThread(NULL, 0, wodPlayer, (LPVOID)(DWORD_PTR)wDevID, 0, &(wwo->dwThreadID)); - if (wwo->hThread) - SetThreadPriority(wwo->hThread, THREAD_PRIORITY_TIME_CRITICAL); - else - { + if (!wwo->hThread) { ERR("Thread creation for the wodPlayer failed!\n"); CloseHandle(wwo->hStartUpEvent); retcode = MMSYSERR_NOMEM; goto errexit; } + SetThreadPriority(wwo->hThread, THREAD_PRIORITY_TIME_CRITICAL); WaitForSingleObject(wwo->hStartUpEvent, INFINITE); CloseHandle(wwo->hStartUpEvent); - wwo->hStartUpEvent = INVALID_HANDLE_VALUE; + wwo->hStartUpEvent = NULL;
TRACE("handle=%p\n", pcm); TRACE("wBitsPerSample=%u, nAvgBytesPerSec=%u, nSamplesPerSec=%u, nChannels=%u nBlockAlign=%u!\n", @@ -856,7 +854,7 @@ static DWORD wodClose(WORD wDevID) WARN("buffers still playing !\n"); ret = WAVERR_STILLPLAYING; } else { - if (wwo->hThread != INVALID_HANDLE_VALUE) { + if (wwo->hThread) { ALSA_AddRingMessage(&wwo->msgRing, WINE_WM_CLOSING, 0, TRUE); } ALSA_DestroyRingMessage(&wwo->msgRing);