From 7251e91d4da20617badd27c6b87163bfb0f749a8 Mon Sep 17 00:00:00 2001 From: Paul Chitescu Date: Wed, 23 Dec 2009 18:17:38 +0200 Subject: [PATCH] quartz: Implement NullRenderer's IBaseFilter::FindPin. --- dlls/quartz/nullrenderer.c | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/dlls/quartz/nullrenderer.c b/dlls/quartz/nullrenderer.c index f7740121ea..d2aedfa38f 100644 --- a/dlls/quartz/nullrenderer.c +++ b/dlls/quartz/nullrenderer.c @@ -43,6 +43,7 @@ WINE_DEFAULT_DEBUG_CHANNEL(quartz); static const WCHAR wcsInputPinName[] = {'i','n','p','u','t',' ','p','i','n',0}; +static const WCHAR wcsAltInputPinName[] = {'I','n',0}; static const IBaseFilterVtbl NullRenderer_Vtbl; static const IUnknownVtbl IInner_VTable; @@ -472,11 +473,17 @@ static HRESULT WINAPI NullRenderer_FindPin(IBaseFilter * iface, LPCWSTR Id, IPin TRACE("(%p/%p)->(%p,%p)\n", This, iface, debugstr_w(Id), ppPin); - FIXME("NullRenderer::FindPin(...)\n"); + if (!Id || !ppPin) + return E_POINTER; - /* FIXME: critical section */ - - return E_NOTIMPL; + if (!lstrcmpiW(Id,wcsInputPinName) || !lstrcmpiW(Id,wcsAltInputPinName)) + { + *ppPin = (IPin *)This->pInputPin; + IPin_AddRef(*ppPin); + return S_OK; + } + *ppPin = NULL; + return VFW_E_NOT_FOUND; } static HRESULT WINAPI NullRenderer_QueryFilterInfo(IBaseFilter * iface, FILTER_INFO *pInfo)