dmime: SegTrigger track supports parameter GUID_IDirectMusicStyle.

Signed-off-by: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
Alistair Leslie-Hughes 2019-11-14 20:40:24 +01:00 committed by Alexandre Julliard
parent 0914a2f2af
commit 14e36e6194
2 changed files with 19 additions and 6 deletions

View File

@ -136,14 +136,17 @@ static HRESULT WINAPI segment_track_SetParam(IDirectMusicTrack8 *iface, REFGUID
return S_OK; return S_OK;
} }
static HRESULT WINAPI segment_track_IsParamSupported(IDirectMusicTrack8 *iface, REFGUID rguidType) static HRESULT WINAPI segment_track_IsParamSupported(IDirectMusicTrack8 *iface, REFGUID type)
{ {
IDirectMusicSegTriggerTrack *This = impl_from_IDirectMusicTrack8(iface); IDirectMusicSegTriggerTrack *This = impl_from_IDirectMusicTrack8(iface);
TRACE("(%p, %s)\n", This, debugstr_dmguid(rguidType)); TRACE("(%p, %s)\n", This, debugstr_dmguid(type));
/* didn't find any params */
TRACE("param unsupported\n"); if (IsEqualGUID(type, &GUID_IDirectMusicStyle))
return DMUS_E_TYPE_UNSUPPORTED; return S_OK;
TRACE("param unsupported\n");
return DMUS_E_TYPE_UNSUPPORTED;
} }
static HRESULT WINAPI segment_track_AddNotificationType(IDirectMusicTrack8 *iface, static HRESULT WINAPI segment_track_AddNotificationType(IDirectMusicTrack8 *iface,

View File

@ -565,6 +565,16 @@ static void test_track(void)
ok(hr == E_NOTIMPL, "IDirectMusicTrack_SetParam failed: %08x\n", hr); ok(hr == E_NOTIMPL, "IDirectMusicTrack_SetParam failed: %08x\n", hr);
hr = IDirectMusicTrack_IsParamSupported(dmt, NULL); hr = IDirectMusicTrack_IsParamSupported(dmt, NULL);
ok(hr == E_NOTIMPL, "IDirectMusicTrack_IsParamSupported failed: %08x\n", hr); ok(hr == E_NOTIMPL, "IDirectMusicTrack_IsParamSupported failed: %08x\n", hr);
hr = IDirectMusicTrack_IsParamSupported(dmt, &GUID_IDirectMusicStyle);
ok(hr == E_NOTIMPL, "got: %08x\n", hr);
}
else {
hr = IDirectMusicTrack_IsParamSupported(dmt, &GUID_IDirectMusicStyle);
if (class[i].clsid == &CLSID_DirectMusicSegmentTriggerTrack)
ok(hr == S_OK, "got: %08x\n", hr);
else
ok(hr == DMUS_E_TYPE_UNSUPPORTED, "got: %08x\n", hr);
} }
if (class[i].clsid != &CLSID_DirectMusicMarkerTrack && if (class[i].clsid != &CLSID_DirectMusicMarkerTrack &&
class[i].clsid != &CLSID_DirectMusicTimeSigTrack) { class[i].clsid != &CLSID_DirectMusicTimeSigTrack) {