diff --git a/dlls/winmm/tests/wave.c b/dlls/winmm/tests/wave.c index 921216bf68f..6405cf81ab0 100644 --- a/dlls/winmm/tests/wave.c +++ b/dlls/winmm/tests/wave.c @@ -30,6 +30,7 @@ #include "winnls.h" #include "mmsystem.h" #define NOBITMAP +#include "mmddk.h" #include "mmreg.h" #include "ks.h" #include "ksguid.h" @@ -891,6 +892,11 @@ static void wave_out_test_device(UINT_PTR device) "waveOutGetDevCapsW(%s): unexpected return value %s\n", dev_name(device),wave_out_error(rc)); + rc=waveOutMessage((HWAVEOUT)device, DRV_QUERYMAPPABLE, 0, 0); + ok(rc==MMSYSERR_NOERROR || rc==MMSYSERR_NOTSUPPORTED, + "DRV_QUERYMAPPABLE(%s): unexpected return value %s\n", + dev_name(device),wave_out_error(rc)); + nameA=NULL; rc=waveOutMessage((HWAVEOUT)device, DRV_QUERYDEVICEINTERFACESIZE, (DWORD_PTR)&size, 0); diff --git a/dlls/winmm/waveform.c b/dlls/winmm/waveform.c index 0aa6320b412..658fd24f2e2 100644 --- a/dlls/winmm/waveform.c +++ b/dlls/winmm/waveform.c @@ -2780,6 +2780,8 @@ UINT WINAPI waveOutMessage(HWAVEOUT hWaveOut, UINT uMessage, (DWORD_PTR*)dwParam1, TRUE); case DRV_QUERYFUNCTIONINSTANCEID: return WINMM_QueryInstanceID(HandleToULong(hWaveOut), (WCHAR*)dwParam1, dwParam2, TRUE); + case DRV_QUERYMAPPABLE: + return MMSYSERR_NOERROR; } return MMSYSERR_NOTSUPPORTED; @@ -3152,6 +3154,8 @@ UINT WINAPI waveInMessage(HWAVEIN hWaveIn, UINT uMessage, (DWORD_PTR*)dwParam1, FALSE); case DRV_QUERYFUNCTIONINSTANCEID: return WINMM_QueryInstanceID(HandleToULong(hWaveIn), (WCHAR*)dwParam1, dwParam2, FALSE); + case DRV_QUERYMAPPABLE: + return MMSYSERR_NOERROR; } return MMSYSERR_NOTSUPPORTED;