From: Akihiro Sagawa Subject: [PATCH 2/2] ddraw: Don't fail with DDSCAPS_TEXTURE|DDSCAPS_3DDEVICE when creating managed textures. Message-Id: <20200329192307.C72B.375B48EC@gmail.com> Date: Sun, 29 Mar 2020 19:32:06 +0900 Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=48844 Signed-off-by: Akihiro Sagawa --- dlls/ddraw/surface.c | 1 + dlls/ddraw/tests/ddraw4.c | 1 - dlls/ddraw/tests/ddraw7.c | 1 - 3 files changed, 1 insertion(+), 2 deletions(-) diff --git a/dlls/ddraw/surface.c b/dlls/ddraw/surface.c index 9850a1e..2b199a3 100644 --- a/dlls/ddraw/surface.c +++ b/dlls/ddraw/surface.c @@ -6214,6 +6214,7 @@ HRESULT ddraw_surface_create(struct ddraw *ddraw, const DDSURFACEDESC2 *surface_ if (desc->ddsCaps.dwCaps2 & (DDSCAPS2_TEXTUREMANAGE | DDSCAPS2_D3DTEXTUREMANAGE)) { + wined3d_desc.bind_flags &= ~WINED3D_BIND_RENDER_TARGET; wined3d_desc.access = WINED3D_RESOURCE_ACCESS_GPU | WINED3D_RESOURCE_ACCESS_CPU | WINED3D_RESOURCE_ACCESS_MAP_R | WINED3D_RESOURCE_ACCESS_MAP_W; /* Managed textures have the system memory flag set. */ diff --git a/dlls/ddraw/tests/ddraw4.c b/dlls/ddraw/tests/ddraw4.c index ad974e4..19c1437 100644 --- a/dlls/ddraw/tests/ddraw4.c +++ b/dlls/ddraw/tests/ddraw4.c @@ -5485,7 +5485,6 @@ static void test_texturemanage(void) ddsd.dwHeight = 4; hr = IDirectDraw4_CreateSurface(ddraw, &ddsd, &surface, NULL); - todo_wine_if(i == 8 || i == 9) ok(hr == tests[i].hr, "Got unexpected, hr %#x, case %u.\n", hr, i); if (FAILED(hr)) continue; diff --git a/dlls/ddraw/tests/ddraw7.c b/dlls/ddraw/tests/ddraw7.c index f8dd80f..a303ce2 100644 --- a/dlls/ddraw/tests/ddraw7.c +++ b/dlls/ddraw/tests/ddraw7.c @@ -5215,7 +5215,6 @@ static void test_texturemanage(void) if (tests[i].hr == DD_OK && is_ddraw64 && (tests[i].caps_in & DDSCAPS_TEXTURE)) todo_wine ok(hr == E_NOINTERFACE, "Test %u: Got unexpected hr %#x.\n", i, hr); else - todo_wine_if(i == 8 || i == 9) ok(hr == tests[i].hr, "Test %u: Got unexpected hr %#x, expected %#x.\n", i, hr, tests[i].hr); if (FAILED(hr)) continue;