From 2af9198eba62cd15e3fea989d36bf820ecda15e4 Mon Sep 17 00:00:00 2001 From: Fedor Date: Wed, 12 Jun 2019 13:44:25 +0300 Subject: [PATCH] Ensure we AddRef prior to early return in MediaType::Assign. --- .../webrtc/modules/video_capture/windows/MediaType.cpp | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/media/webrtc/trunk/webrtc/modules/video_capture/windows/MediaType.cpp b/media/webrtc/trunk/webrtc/modules/video_capture/windows/MediaType.cpp index 54fc2ab7b..f06709446 100644 --- a/media/webrtc/trunk/webrtc/modules/video_capture/windows/MediaType.cpp +++ b/media/webrtc/trunk/webrtc/modules/video_capture/windows/MediaType.cpp @@ -82,7 +82,10 @@ MediaType::Assign(const AM_MEDIA_TYPE* aMediaType) Clear(); // Shallow copy. - memcpy(this, aMediaType, sizeof(AM_MEDIA_TYPE)); + memcpy(static_cast(this), aMediaType, sizeof(AM_MEDIA_TYPE)); + + if (pUnk) + pUnk->AddRef(); // Create deep copy of incoming data... if (cbFormat) { @@ -92,9 +95,6 @@ MediaType::Assign(const AM_MEDIA_TYPE* aMediaType) memcpy(pbFormat, aMediaType->pbFormat, cbFormat); } - if (pUnk) - pUnk->AddRef(); - return S_OK; }