amstream: Implement IDirectDrawMediaStream::GetMultiMediaStream.

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:57:50 +02:00 committed by Alexandre Julliard
parent 0dc09c032d
commit c88f4b85bc
2 changed files with 13 additions and 10 deletions

View File

@ -273,13 +273,19 @@ static ULONG WINAPI DirectDrawMediaStreamImpl_IDirectDrawMediaStream_Release(IDi
/*** IMediaStream methods ***/
static HRESULT WINAPI DirectDrawMediaStreamImpl_IDirectDrawMediaStream_GetMultiMediaStream(IDirectDrawMediaStream *iface,
IMultiMediaStream** ppMultiMediaStream)
IMultiMediaStream **multi_media_stream)
{
DirectDrawMediaStreamImpl *This = impl_from_IDirectDrawMediaStream(iface);
FIXME("(%p/%p)->(%p) stub!\n", This, iface, ppMultiMediaStream);
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 DirectDrawMediaStreamImpl_IDirectDrawMediaStream_GetInformation(IDirectDrawMediaStream *iface,

View File

@ -292,16 +292,13 @@ static void test_media_streams(void)
ok(hr == S_OK, "IDirectDrawMediaStream_CreateSample returned: %x\n", hr);
hr = IDirectDrawMediaStream_GetMultiMediaStream(ddraw_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 = IDirectDrawMediaStream_GetMultiMediaStream(ddraw_stream, &multi_media_stream);
todo_wine ok(hr == S_OK, "IDirectDrawMediaStream_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, "IDirectDrawMediaStream_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);
}
if (ddraw_sample)