[PATCH v2 6/7] strmbase/transform: Don't expose IQualityControl from the filter.

Zebediah Figura z.figura12 at gmail.com
Sat May 18 21:38:49 CDT 2019


Signed-off-by: Zebediah Figura <z.figura12 at gmail.com>
---
 dlls/quartz/tests/acmwrapper.c |  2 +-
 dlls/quartz/tests/avidec.c     |  2 +-
 dlls/strmbase/transform.c      | 22 +---------------------
 3 files changed, 3 insertions(+), 23 deletions(-)

diff --git a/dlls/quartz/tests/acmwrapper.c b/dlls/quartz/tests/acmwrapper.c
index 08ee40bde6..357a1ffa2d 100644
--- a/dlls/quartz/tests/acmwrapper.c
+++ b/dlls/quartz/tests/acmwrapper.c
@@ -76,7 +76,7 @@ static void test_interfaces(void)
     check_interface(filter, &IID_IMediaPosition, FALSE);
     check_interface(filter, &IID_IMediaSeeking, FALSE);
     check_interface(filter, &IID_IPin, FALSE);
-    todo_wine check_interface(filter, &IID_IQualityControl, FALSE);
+    check_interface(filter, &IID_IQualityControl, FALSE);
     check_interface(filter, &IID_IQualProp, FALSE);
     check_interface(filter, &IID_IReferenceClock, FALSE);
     check_interface(filter, &IID_IVideoWindow, FALSE);
diff --git a/dlls/quartz/tests/avidec.c b/dlls/quartz/tests/avidec.c
index 04de3733cd..5406c567b3 100644
--- a/dlls/quartz/tests/avidec.c
+++ b/dlls/quartz/tests/avidec.c
@@ -101,7 +101,7 @@ static void test_interfaces(void)
     check_interface(filter, &IID_IMediaSeeking, FALSE);
     check_interface(filter, &IID_IPersistPropertyBag, FALSE);
     check_interface(filter, &IID_IPin, FALSE);
-    todo_wine check_interface(filter, &IID_IQualityControl, FALSE);
+    check_interface(filter, &IID_IQualityControl, FALSE);
     check_interface(filter, &IID_IQualProp, FALSE);
     check_interface(filter, &IID_IReferenceClock, FALSE);
     check_interface(filter, &IID_IVideoWindow, FALSE);
diff --git a/dlls/strmbase/transform.c b/dlls/strmbase/transform.c
index ab502c926c..9cb18b2c3e 100644
--- a/dlls/strmbase/transform.c
+++ b/dlls/strmbase/transform.c
@@ -161,26 +161,6 @@ static const BaseOutputPinFuncTable tf_output_BaseOutputFuncTable = {
     BaseOutputPinImpl_DecideAllocator,
 };
 
-static HRESULT WINAPI TransformFilterImpl_QueryInterface(IBaseFilter * iface, REFIID riid, LPVOID * ppv)
-{
-    HRESULT hr;
-    TransformFilter *This = impl_from_IBaseFilter(iface);
-    TRACE("(%p/%p)->(%s, %p)\n", This, iface, debugstr_guid(riid), ppv);
-
-    if (IsEqualIID(riid, &IID_IQualityControl))  {
-        *ppv = (IQualityControl*)This->qcimpl;
-        IUnknown_AddRef((IUnknown*)*ppv);
-        return S_OK;
-    }
-    hr = BaseFilterImpl_QueryInterface(iface, riid, ppv);
-
-    if (FAILED(hr) && !IsEqualIID(riid, &IID_IPin) && !IsEqualIID(riid, &IID_IVideoWindow) &&
-        !IsEqualIID(riid, &IID_IAMFilterMiscFlags))
-        FIXME("No interface for %s!\n", debugstr_guid(riid));
-
-    return hr;
-}
-
 static ULONG WINAPI TransformFilterImpl_Release(IBaseFilter * iface)
 {
     TransformFilter *This = impl_from_IBaseFilter(iface);
@@ -293,7 +273,7 @@ static HRESULT WINAPI TransformFilterImpl_Run(IBaseFilter *iface, REFERENCE_TIME
 
 static const IBaseFilterVtbl transform_vtbl =
 {
-    TransformFilterImpl_QueryInterface,
+    BaseFilterImpl_QueryInterface,
     BaseFilterImpl_AddRef,
     TransformFilterImpl_Release,
     BaseFilterImpl_GetClassID,
-- 
2.21.0




More information about the wine-devel mailing list