diff --git a/dlls/winmm/lolvldrv.c b/dlls/winmm/lolvldrv.c index 62a02b6c8be..fced2228b18 100644 --- a/dlls/winmm/lolvldrv.c +++ b/dlls/winmm/lolvldrv.c @@ -85,7 +85,7 @@ void MMDRV_InstallMap(unsigned int drv, llTypes[drv].Map16To32A = mp1632; llTypes[drv].UnMap16To32A = um1632; llTypes[drv].Map32ATo16 = mp3216; - llTypes[drv].UnMap32ATo16 = um1632; + llTypes[drv].UnMap32ATo16 = um3216; llTypes[drv].Callback = cb; } @@ -561,6 +561,9 @@ static BOOL MMDRV_InitPerType(LPWINE_MM_DRIVER lpDrv, UINT type, UINT wMsg) } TRACE("Got %u dev for (%s:%s)\n", count, lpDrv->drvname, llTypes[type].typestr); + + if (HIWORD(count)) + return FALSE; /* got some drivers */ if (lpDrv->bIsMapper) {