amstream: Implement IAMMediaStream::GetMultiMediaStream for audio.

Signed-off-by: Michael Müller <michael@fds-team.de>
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
Michael Müller 2016-04-30 03:58:55 +02:00 committed by Alexandre Julliard
parent c88f4b85bc
commit dc732ffa7f
2 changed files with 12 additions and 9 deletions

View File

@ -523,9 +523,15 @@ static HRESULT WINAPI AudioMediaStreamImpl_IAMMediaStream_GetMultiMediaStream(IA
{
AudioMediaStreamImpl *This = impl_from_AudioMediaStream_IAMMediaStream(iface);
FIXME("(%p/%p)->(%p) stub!\n", This, iface, multi_media_stream);
TRACE("(%p/%p)->(%p)\n", This, iface, multi_media_stream);
return S_FALSE;
if (!multi_media_stream)
return E_POINTER;
IMultiMediaStream_AddRef(This->parent);
*multi_media_stream = This->parent;
return S_OK;
}
static HRESULT WINAPI AudioMediaStreamImpl_IAMMediaStream_GetInformation(IAMMediaStream *iface,

View File

@ -373,16 +373,13 @@ static void test_media_streams(void)
ok((void*)am_media_stream == (void*)audio_stream, "Not same interface, got %p expected %p\n", am_media_stream, audio_stream);
hr = IAMMediaStream_GetMultiMediaStream(am_media_stream, NULL);
todo_wine ok(hr == E_POINTER, "Expected E_POINTER, got %x\n", hr);
ok(hr == E_POINTER, "Expected E_POINTER, got %x\n", hr);
multi_media_stream = (void *)0xdeadbeef;
hr = IAMMediaStream_GetMultiMediaStream(am_media_stream, &multi_media_stream);
todo_wine ok(hr == S_OK, "IAMMediaStream_GetMultiMediaStream returned: %x\n", hr);
if (hr == S_OK)
{
ok((void *)multi_media_stream == (void *)pams, "Expected %p, got %p\n", pams, multi_media_stream);
IMultiMediaStream_Release(multi_media_stream);
}
ok(hr == S_OK, "IAMMediaStream_GetMultiMediaStream returned: %x\n", hr);
ok((void *)multi_media_stream == (void *)pams, "Expected %p, got %p\n", pams, multi_media_stream);
IMultiMediaStream_Release(multi_media_stream);
IAMMediaStream_Release(am_media_stream);