Andrew Eikum <[email protected]> writes: > @@ -198,21 +1771,25 @@ UINT WINAPI waveOutGetErrorTextA(UINT uError, LPSTR > lpText, UINT uSize) > */ > UINT WINAPI waveOutGetErrorTextW(UINT uError, LPWSTR lpText, UINT uSize) > { > - UINT ret = MMSYSERR_BADERRNUM; > - > - if (lpText == NULL) ret = MMSYSERR_INVALPARAM; > - else if (uSize == 0) ret = MMSYSERR_NOERROR; > - else if ( > - /* test has been removed because MMSYSERR_BASE is 0, and gcc did > emit > - * a warning for the test was always true */ > - (/*uError >= MMSYSERR_BASE && */ uError <= MMSYSERR_LASTERROR) || > - (uError >= WAVERR_BASE && uError <= WAVERR_LASTERROR)) { > - if (LoadStringW(hWinMM32Instance, > - uError, lpText, uSize) > 0) { > - ret = MMSYSERR_NOERROR; > - } > - } > - return ret; > + TRACE("(%u, %p, %u)\n", uError, lpText, uSize); > + > + if(!WINMM_StartDevicesThread()) > + return MMSYSERR_ERROR; > + > + if(!lpText) > + return MMSYSERR_INVALPARAM; > + > + if(uSize == 0) > + return MMSYSERR_NOERROR; > + > + if(uError > MMSYSERR_LASTERROR || uError < WAVERR_BASE || > + uError > WAVERR_LASTERROR) > + return MMSYSERR_BADERRNUM;
This doesn't do what you want (and that sort of change could easily be a separate patch). -- Alexandre Julliard [email protected]
