[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