From 4300981d6b997c0b4c70c3415d4bbcd694d1a7f1 Mon Sep 17 00:00:00 2001 From: Anton Baskanov Date: Mon, 25 May 2020 14:17:33 -0500 Subject: [PATCH] amstream: Don't crash if parent is NULL in AMAudioStream:: and AMDirectDrawStream::GetMultiMediaStream. Signed-off-by: Anton Baskanov Signed-off-by: Zebediah Figura Signed-off-by: Alexandre Julliard --- 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 d620abc6ecf..265c3bf9f20 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 6ef74eb7de0..a4bfe948d2d 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; }