Michael Stefaniuc : quartz: Don' t set the VideoRenderer object on creation failure.

Alexandre Julliard julliard at winehq.org
Mon Jul 2 13:22:00 CDT 2012


Module: wine
Branch: master
Commit: eb6388c4a5922a8e87794569fe854c681a6bd884
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=eb6388c4a5922a8e87794569fe854c681a6bd884

Author: Michael Stefaniuc <mstefani at redhat.de>
Date:   Mon Jul  2 01:05:01 2012 +0200

quartz: Don't set the VideoRenderer object on creation failure.

---

 dlls/quartz/videorenderer.c |   12 +++++++-----
 1 files changed, 7 insertions(+), 5 deletions(-)

diff --git a/dlls/quartz/videorenderer.c b/dlls/quartz/videorenderer.c
index 3e632cb..0edf406 100644
--- a/dlls/quartz/videorenderer.c
+++ b/dlls/quartz/videorenderer.c
@@ -668,8 +668,6 @@ HRESULT VideoRenderer_create(IUnknown * pUnkOuter, LPVOID * ppv)
     if (FAILED(hr))
         goto fail;
 
-    *ppv = pVideoRenderer;
-
     hr = BaseControlWindow_Init(&pVideoRenderer->baseControlWindow, &IVideoWindow_VTable, &pVideoRenderer->renderer.filter, &pVideoRenderer->renderer.filter.csFilter, &pVideoRenderer->renderer.pInputPin->pin, &renderer_BaseWindowFuncTable);
     if (FAILED(hr))
         goto fail;
@@ -678,10 +676,14 @@ HRESULT VideoRenderer_create(IUnknown * pUnkOuter, LPVOID * ppv)
     if (FAILED(hr))
         goto fail;
 
-    if (!CreateRenderingSubsystem(pVideoRenderer))
-        return E_FAIL;
+    if (!CreateRenderingSubsystem(pVideoRenderer)) {
+        hr = E_FAIL;
+        goto fail;
+    }
+
+    *ppv = pVideoRenderer;
+    return S_OK;
 
-    return hr;
 fail:
     BaseRendererImpl_Release(&pVideoRenderer->renderer.filter.IBaseFilter_iface);
     CoTaskMemFree(pVideoRenderer);




More information about the wine-cvs mailing list