Module: wine Branch: master Commit: 4300981d6b997c0b4c70c3415d4bbcd694d1a7f1 URL: https://source.winehq.org/git/wine.git/?a=commit;h=4300981d6b997c0b4c70c3415...
Author: Anton Baskanov baskanov@gmail.com Date: Mon May 25 14:17:33 2020 -0500
amstream: Don't crash if parent is NULL in AMAudioStream:: and AMDirectDrawStream::GetMultiMediaStream.
Signed-off-by: Anton Baskanov baskanov@gmail.com Signed-off-by: Zebediah Figura z.figura12@gmail.com Signed-off-by: Alexandre Julliard julliard@winehq.org
---
dlls/amstream/audiostream.c | 14 +++++++------- dlls/amstream/ddrawstream.c | 14 +++++++------- 2 files changed, 14 insertions(+), 14 deletions(-)
diff --git a/dlls/amstream/audiostream.c b/dlls/amstream/audiostream.c index d620abc6ec..265c3bf9f2 100644 --- a/dlls/amstream/audiostream.c +++ b/dlls/amstream/audiostream.c @@ -429,18 +429,18 @@ static ULONG WINAPI audio_IAMMediaStream_Release(IAMMediaStream *iface)
/*** IMediaStream methods ***/ static HRESULT WINAPI audio_IAMMediaStream_GetMultiMediaStream(IAMMediaStream *iface, - IMultiMediaStream** multi_media_stream) + IMultiMediaStream **mmstream) { - struct audio_stream *This = impl_from_IAMMediaStream(iface); + struct audio_stream *stream = impl_from_IAMMediaStream(iface);
- TRACE("(%p/%p)->(%p)\n", This, iface, multi_media_stream); + TRACE("stream %p, mmstream %p.\n", stream, mmstream);
- if (!multi_media_stream) + if (!mmstream) return E_POINTER;
- IMultiMediaStream_AddRef(This->parent); - *multi_media_stream = This->parent; - + if (stream->parent) + IMultiMediaStream_AddRef(stream->parent); + *mmstream = stream->parent; return S_OK; }
diff --git a/dlls/amstream/ddrawstream.c b/dlls/amstream/ddrawstream.c index 6ef74eb7de..a4bfe948d2 100644 --- a/dlls/amstream/ddrawstream.c +++ b/dlls/amstream/ddrawstream.c @@ -125,18 +125,18 @@ static ULONG WINAPI ddraw_IAMMediaStream_Release(IAMMediaStream *iface)
/*** IMediaStream methods ***/ static HRESULT WINAPI ddraw_IAMMediaStream_GetMultiMediaStream(IAMMediaStream *iface, - IMultiMediaStream** multi_media_stream) + IMultiMediaStream **mmstream) { - struct ddraw_stream *This = impl_from_IAMMediaStream(iface); + struct ddraw_stream *stream = impl_from_IAMMediaStream(iface);
- TRACE("(%p/%p)->(%p)\n", This, iface, multi_media_stream); + TRACE("stream %p, mmstream %p.\n", stream, mmstream);
- if (!multi_media_stream) + if (!mmstream) return E_POINTER;
- IMultiMediaStream_AddRef(This->parent); - *multi_media_stream = This->parent; - + if (stream->parent) + IMultiMediaStream_AddRef(stream->parent); + *mmstream = stream->parent; return S_OK; }