From: Alex Henrie Subject: [PATCH 4/7] ddraw: Fix IDirectDraw2_CreateSurface's invalid descriptor error code. Message-Id: <20170215065349.8863-4-alexhenrie24@gmail.com> Date: Tue, 14 Feb 2017 23:53:46 -0700 In-Reply-To: <20170215065349.8863-1-alexhenrie24@gmail.com> References: <20170215065349.8863-1-alexhenrie24@gmail.com> Signed-off-by: Alex Henrie --- dlls/ddraw/ddraw.c | 2 +- dlls/ddraw/tests/ddraw2.c | 5 +++++ 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/dlls/ddraw/ddraw.c b/dlls/ddraw/ddraw.c index 0ca9ba9225..6089bf9693 100644 --- a/dlls/ddraw/ddraw.c +++ b/dlls/ddraw/ddraw.c @@ -2937,7 +2937,7 @@ static HRESULT WINAPI ddraw2_CreateSurface(IDirectDraw2 *iface, { WARN("Application supplied invalid surface descriptor\n"); wined3d_mutex_unlock(); - return DDERR_INVALIDPARAMS; + return E_INVALIDARG; } DDSD_to_DDSD2(surface_desc, &surface_desc2); diff --git a/dlls/ddraw/tests/ddraw2.c b/dlls/ddraw/tests/ddraw2.c index db09e5d897..ae13ba8309 100644 --- a/dlls/ddraw/tests/ddraw2.c +++ b/dlls/ddraw/tests/ddraw2.c @@ -2113,6 +2113,11 @@ static void test_surface_qi(void) } IDirect3DDevice_Release(device); + surface = (IDirectDrawSurface *)0xdeadbeef; + hr = IDirectDraw2_CreateSurface(ddraw, NULL, &surface, NULL); + ok(hr == E_INVALIDARG, "Got unexpected hr %#x.\n", hr); + ok(surface == (IDirectDrawSurface *)0xdeadbeef, "Got unexpected surface %p\n", surface); + memset(&surface_desc, 0, sizeof(surface_desc)); surface_desc.dwSize = sizeof(surface_desc); surface_desc.dwFlags = DDSD_CAPS | DDSD_WIDTH | DDSD_HEIGHT; -- 2.11.1