Module: wine Branch: master Commit: eb6388c4a5922a8e87794569fe854c681a6bd884 URL: http://source.winehq.org/git/wine.git/?a=commit;h=eb6388c4a5922a8e87794569fe...
Author: Michael Stefaniuc mstefani@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);