Signed-off-by: Nikolay Sivov nsivov@codeweavers.com --- dlls/dxva2/main.c | 6 ++++++ dlls/dxva2/tests/dxva2.c | 2 -- 2 files changed, 6 insertions(+), 2 deletions(-)
diff --git a/dlls/dxva2/main.c b/dlls/dxva2/main.c index 81c32692f7f..46f5a7af485 100644 --- a/dlls/dxva2/main.c +++ b/dlls/dxva2/main.c @@ -496,6 +496,12 @@ static HRESULT WINAPI device_manager_processor_service_CreateVideoProcessor(IDir
/* FIXME: validate render target format */
+ if (max_substreams >= 16) + { + WARN("Invalid substreams count %u.\n", max_substreams); + return E_INVALIDARG; + } + if (!(object = heap_alloc_zero(sizeof(*object)))) return E_OUTOFMEMORY;
diff --git a/dlls/dxva2/tests/dxva2.c b/dlls/dxva2/tests/dxva2.c index 75c23dfdcda..e3307032ad4 100644 --- a/dlls/dxva2/tests/dxva2.c +++ b/dlls/dxva2/tests/dxva2.c @@ -470,9 +470,7 @@ static void test_video_processor(void) /* Number of substreams does not include reference stream. */ hr = IDirectXVideoProcessorService_CreateVideoProcessor(service, &DXVA2_VideoProcSoftwareDevice, &video_desc, D3DFMT_A8R8G8B8, 16, &processor); -todo_wine ok(hr == E_INVALIDARG, "Unexpected hr %#x.\n", hr); - if (SUCCEEDED(hr)) IDirectXVideoProcessor_Release(processor);
hr = IDirectXVideoProcessorService_CreateVideoProcessor(service, &DXVA2_VideoProcSoftwareDevice, &video_desc, D3DFMT_A8R8G8B8, 15, &processor);