Module: wine Branch: master Commit: 68d03ba8bbeb07116e15373938e511d693346f4a URL: https://source.winehq.org/git/wine.git/?a=commit;h=68d03ba8bbeb07116e1537393...
Author: Gijs Vermeulen gijsvrm@gmail.com Date: Mon Nov 23 17:29:27 2020 +0100
quartz: Return E_INVALIDARG when cursor is NULL in IEnumFilters::Skip().
Signed-off-by: Gijs Vermeulen gijsvrm@gmail.com Signed-off-by: Zebediah Figura z.figura12@gmail.com Signed-off-by: Alexandre Julliard julliard@winehq.org
---
dlls/quartz/filtergraph.c | 2 +- dlls/quartz/tests/filtergraph.c | 6 ++++++ 2 files changed, 7 insertions(+), 1 deletion(-)
diff --git a/dlls/quartz/filtergraph.c b/dlls/quartz/filtergraph.c index beceaa8b6b3..ff96c82baee 100644 --- a/dlls/quartz/filtergraph.c +++ b/dlls/quartz/filtergraph.c @@ -326,7 +326,7 @@ static HRESULT WINAPI EnumFilters_Skip(IEnumFilters *iface, ULONG count) return VFW_E_ENUM_OUT_OF_SYNC;
if (!enum_filters->cursor) - return S_FALSE; + return E_INVALIDARG;
while (count--) { diff --git a/dlls/quartz/tests/filtergraph.c b/dlls/quartz/tests/filtergraph.c index 353e3b2e33e..7d423da6078 100644 --- a/dlls/quartz/tests/filtergraph.c +++ b/dlls/quartz/tests/filtergraph.c @@ -677,6 +677,12 @@ static void test_enum_filters(void) hr = IEnumFilters_Next(enum1, 1, filters, NULL); ok(hr == S_FALSE, "Got hr %#x.\n", hr);
+ hr = IEnumFilters_Skip(enum1, 0); + ok(hr == E_INVALIDARG, "Got hr %#x.\n", hr); + + hr = IEnumFilters_Skip(enum1, 1); + ok(hr == E_INVALIDARG, "Got hr %#x.\n", hr); + IFilterGraph2_AddFilter(graph, filter1, NULL); IFilterGraph2_AddFilter(graph, filter2, NULL);