Module: wine Branch: master Commit: 0ffaf5c28a63344ba86c7650d1f80f518f4c134c URL: https://source.winehq.org/git/wine.git/?a=commit;h=0ffaf5c28a63344ba86c7650d...
Author: Henri Verbeet hverbeet@codeweavers.com Date: Wed Nov 21 17:05:27 2018 +0330
d3d9: Do not add map access indiscriminately in cubetexture_init().
Signed-off-by: Henri Verbeet hverbeet@codeweavers.com Signed-off-by: Alexandre Julliard julliard@winehq.org
---
dlls/d3d9/tests/device.c | 5 +++-- dlls/d3d9/texture.c | 3 +-- 2 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/dlls/d3d9/tests/device.c b/dlls/d3d9/tests/device.c index 205a9cc..cb38aea 100644 --- a/dlls/d3d9/tests/device.c +++ b/dlls/d3d9/tests/device.c @@ -12877,10 +12877,11 @@ static void test_resource_access(void) expected_hr = D3D_OK; else expected_hr = D3DERR_INVALIDCALL; - todo_wine_if(expected_hr != D3D_OK && surface_types[i].type != SURFACE_2D) + todo_wine_if(expected_hr != D3D_OK && surface_types[i].type != SURFACE_2D + && surface_types[i].type != SURFACE_CUBE) ok(hr == expected_hr, "Test %s %u: Got unexpected hr %#x.\n", surface_types[i].name, j, hr); hr = IDirect3DSurface9_UnlockRect(surface); - todo_wine_if(expected_hr != D3D_OK) + todo_wine_if(expected_hr != D3D_OK && surface_types[i].type != SURFACE_CUBE) ok(hr == expected_hr, "Test %s %u: Got unexpected hr %#x.\n", surface_types[i].name, j, hr);
if (SUCCEEDED(IDirect3DSurface9_GetContainer(surface, &IID_IDirect3DBaseTexture9, (void **)&texture))) diff --git a/dlls/d3d9/texture.c b/dlls/d3d9/texture.c index de485ba..84a1bd8 100644 --- a/dlls/d3d9/texture.c +++ b/dlls/d3d9/texture.c @@ -1397,8 +1397,7 @@ HRESULT cubetexture_init(struct d3d9_texture *texture, struct d3d9_device *devic if (pool == D3DPOOL_SCRATCH) desc.usage |= WINED3DUSAGE_SCRATCH; desc.bind_flags = wined3d_bind_flags_from_d3d9_usage(usage) | WINED3D_BIND_SHADER_RESOURCE; - desc.access = wined3daccess_from_d3dpool(pool, usage) - | WINED3D_RESOURCE_ACCESS_MAP_R | WINED3D_RESOURCE_ACCESS_MAP_W; + desc.access = wined3daccess_from_d3dpool(pool, usage); desc.width = edge_length; desc.height = edge_length; desc.depth = 1;