[PATCH v2] dmstyle: Add GUID_IDirectMusicStyle support in Style Track GetParam.
Michael Stefaniuc
mstefani at winehq.org
Tue Nov 19 11:55:26 CST 2019
Signed-off-by: Michael Stefaniuc <mstefani at winehq.org>
On 11/18/19 4:07 AM, Alistair Leslie-Hughes wrote:
> v2: Droppped tests apon request.
>
> Signed-off-by: Alistair Leslie-Hughes <leslie_alistair at hotmail.com>
> ---
> dlls/dmstyle/styletrack.c | 24 ++++++++++++++++++++----
> 1 file changed, 20 insertions(+), 4 deletions(-)
>
> diff --git a/dlls/dmstyle/styletrack.c b/dlls/dmstyle/styletrack.c
> index cc15bd81d1..06fe1c7ca8 100644
> --- a/dlls/dmstyle/styletrack.c
> +++ b/dlls/dmstyle/styletrack.c
> @@ -132,15 +132,31 @@ static HRESULT WINAPI style_track_Play(IDirectMusicTrack8 *iface, void *pStateDa
> return S_OK;
> }
>
> -static HRESULT WINAPI style_track_GetParam(IDirectMusicTrack8 *iface, REFGUID rguidType,
> - MUSIC_TIME mtTime, MUSIC_TIME *pmtNext, void *pParam)
> +static HRESULT WINAPI style_track_GetParam(IDirectMusicTrack8 *iface, REFGUID type,
> + MUSIC_TIME time, MUSIC_TIME *next, void *param)
> {
> IDirectMusicStyleTrack *This = impl_from_IDirectMusicTrack8(iface);
> - FIXME("(%p, %s, %d, %p, %p): stub\n", This, debugstr_dmguid(rguidType), mtTime, pmtNext, pParam);
> + struct list *item = NULL;
>
> - if (!rguidType)
> + FIXME("(%p, %s, %d, %p, %p): stub\n", This, debugstr_dmguid(type), time, next, param);
> +
> + if (!type)
> return E_POINTER;
>
> + if (IsEqualGUID(&GUID_IDirectMusicStyle, type)) {
> + LIST_FOR_EACH (item, &This->Items) {
> + DMUS_PRIVATE_STYLE_ITEM *style = LIST_ENTRY(item, DMUS_PRIVATE_STYLE_ITEM, entry);
> + if (style->pObject) {
> + IDirectMusicStyle8_AddRef(style->pObject);
> + *((IDirectMusicStyle8**)param) = style->pObject;
> +
> + return S_OK;
> + }
> + }
> +
> + return DMUS_E_NOT_FOUND;
> + }
> +
> return S_OK;
> }
>
>
More information about the wine-devel
mailing list