[PATCH 3/5] ddraw: Only set DDSCAPS_VISIBLE on the root surface.

Henri Verbeet hverbeet at codeweavers.com
Tue Dec 3 02:59:17 CST 2013


---
 dlls/ddraw/surface.c      |    3 ++-
 dlls/ddraw/tests/ddraw1.c |    6 +++---
 dlls/ddraw/tests/ddraw2.c |    6 +++---
 dlls/ddraw/tests/ddraw4.c |    6 +++---
 dlls/ddraw/tests/ddraw7.c |    6 +++---
 5 files changed, 14 insertions(+), 13 deletions(-)

diff --git a/dlls/ddraw/surface.c b/dlls/ddraw/surface.c
index ebc143b..26e2648 100644
--- a/dlls/ddraw/surface.c
+++ b/dlls/ddraw/surface.c
@@ -5979,7 +5979,8 @@ HRESULT ddraw_surface_create(struct ddraw *ddraw, const DDSURFACEDESC2 *surface_
 
             /* Only one surface in the flipping chain is a back buffer, one is
              * a front buffer, the others are just flippable surfaces. */
-            desc->ddsCaps.dwCaps &= ~(DDSCAPS_PRIMARYSURFACE | DDSCAPS_FRONTBUFFER | DDSCAPS_BACKBUFFER);
+            desc->ddsCaps.dwCaps &= ~(DDSCAPS_VISIBLE | DDSCAPS_PRIMARYSURFACE | DDSCAPS_FRONTBUFFER
+                    | DDSCAPS_BACKBUFFER);
             if (!i)
                 desc->ddsCaps.dwCaps |= DDSCAPS_BACKBUFFER;
             desc->dwBackBufferCount = 0;
diff --git a/dlls/ddraw/tests/ddraw1.c b/dlls/ddraw/tests/ddraw1.c
index e3ef214..7dac193 100644
--- a/dlls/ddraw/tests/ddraw1.c
+++ b/dlls/ddraw/tests/ddraw1.c
@@ -3583,7 +3583,7 @@ static void test_flip(void)
     surface_desc.dwSize = sizeof(surface_desc);
     hr = IDirectDrawSurface_GetSurfaceDesc(backbuffer1, &surface_desc);
     ok(SUCCEEDED(hr), "Failed to get surface desc, hr %#x.\n", hr);
-    todo_wine ok((surface_desc.ddsCaps.dwCaps & ~placement) == (DDSCAPS_FLIP | DDSCAPS_COMPLEX | DDSCAPS_BACKBUFFER),
+    ok((surface_desc.ddsCaps.dwCaps & ~placement) == (DDSCAPS_FLIP | DDSCAPS_COMPLEX | DDSCAPS_BACKBUFFER),
             "Got unexpected caps %#x.\n", surface_desc.ddsCaps.dwCaps);
 
     hr = IDirectDrawSurface_GetAttachedSurface(backbuffer1, &caps, &backbuffer2);
@@ -3592,7 +3592,7 @@ static void test_flip(void)
     surface_desc.dwSize = sizeof(surface_desc);
     hr = IDirectDrawSurface_GetSurfaceDesc(backbuffer2, &surface_desc);
     ok(SUCCEEDED(hr), "Failed to get surface desc, hr %#x.\n", hr);
-    todo_wine ok((surface_desc.ddsCaps.dwCaps & ~placement) == (DDSCAPS_FLIP | DDSCAPS_COMPLEX),
+    ok((surface_desc.ddsCaps.dwCaps & ~placement) == (DDSCAPS_FLIP | DDSCAPS_COMPLEX),
             "Got unexpected caps %#x.\n", surface_desc.ddsCaps.dwCaps);
 
     hr = IDirectDrawSurface_GetAttachedSurface(backbuffer2, &caps, &backbuffer3);
@@ -3601,7 +3601,7 @@ static void test_flip(void)
     surface_desc.dwSize = sizeof(surface_desc);
     hr = IDirectDrawSurface_GetSurfaceDesc(backbuffer3, &surface_desc);
     ok(SUCCEEDED(hr), "Failed to get surface desc, hr %#x.\n", hr);
-    todo_wine ok((surface_desc.ddsCaps.dwCaps & ~placement) == (DDSCAPS_FLIP | DDSCAPS_COMPLEX),
+    ok((surface_desc.ddsCaps.dwCaps & ~placement) == (DDSCAPS_FLIP | DDSCAPS_COMPLEX),
             "Got unexpected caps %#x.\n", surface_desc.ddsCaps.dwCaps);
 
     hr = IDirectDrawSurface_GetAttachedSurface(backbuffer3, &caps, &surface);
diff --git a/dlls/ddraw/tests/ddraw2.c b/dlls/ddraw/tests/ddraw2.c
index d85908d..c70b98c 100644
--- a/dlls/ddraw/tests/ddraw2.c
+++ b/dlls/ddraw/tests/ddraw2.c
@@ -4264,7 +4264,7 @@ static void test_flip(void)
     surface_desc.dwSize = sizeof(surface_desc);
     hr = IDirectDrawSurface_GetSurfaceDesc(backbuffer1, &surface_desc);
     ok(SUCCEEDED(hr), "Failed to get surface desc, hr %#x.\n", hr);
-    todo_wine ok((surface_desc.ddsCaps.dwCaps & ~placement) == (DDSCAPS_FLIP | DDSCAPS_COMPLEX | DDSCAPS_BACKBUFFER),
+    ok((surface_desc.ddsCaps.dwCaps & ~placement) == (DDSCAPS_FLIP | DDSCAPS_COMPLEX | DDSCAPS_BACKBUFFER),
             "Got unexpected caps %#x.\n", surface_desc.ddsCaps.dwCaps);
 
     hr = IDirectDrawSurface_GetAttachedSurface(backbuffer1, &caps, &backbuffer2);
@@ -4273,7 +4273,7 @@ static void test_flip(void)
     surface_desc.dwSize = sizeof(surface_desc);
     hr = IDirectDrawSurface_GetSurfaceDesc(backbuffer2, &surface_desc);
     ok(SUCCEEDED(hr), "Failed to get surface desc, hr %#x.\n", hr);
-    todo_wine ok((surface_desc.ddsCaps.dwCaps & ~placement) == (DDSCAPS_FLIP | DDSCAPS_COMPLEX),
+    ok((surface_desc.ddsCaps.dwCaps & ~placement) == (DDSCAPS_FLIP | DDSCAPS_COMPLEX),
             "Got unexpected caps %#x.\n", surface_desc.ddsCaps.dwCaps);
 
     hr = IDirectDrawSurface_GetAttachedSurface(backbuffer2, &caps, &backbuffer3);
@@ -4282,7 +4282,7 @@ static void test_flip(void)
     surface_desc.dwSize = sizeof(surface_desc);
     hr = IDirectDrawSurface_GetSurfaceDesc(backbuffer3, &surface_desc);
     ok(SUCCEEDED(hr), "Failed to get surface desc, hr %#x.\n", hr);
-    todo_wine ok((surface_desc.ddsCaps.dwCaps & ~placement) == (DDSCAPS_FLIP | DDSCAPS_COMPLEX),
+    ok((surface_desc.ddsCaps.dwCaps & ~placement) == (DDSCAPS_FLIP | DDSCAPS_COMPLEX),
             "Got unexpected caps %#x.\n", surface_desc.ddsCaps.dwCaps);
 
     hr = IDirectDrawSurface_GetAttachedSurface(backbuffer3, &caps, &surface);
diff --git a/dlls/ddraw/tests/ddraw4.c b/dlls/ddraw/tests/ddraw4.c
index b639f86..dc9a282 100644
--- a/dlls/ddraw/tests/ddraw4.c
+++ b/dlls/ddraw/tests/ddraw4.c
@@ -4868,7 +4868,7 @@ static void test_flip(void)
     surface_desc.dwSize = sizeof(surface_desc);
     hr = IDirectDrawSurface4_GetSurfaceDesc(backbuffer1, &surface_desc);
     ok(SUCCEEDED(hr), "Failed to get surface desc, hr %#x.\n", hr);
-    todo_wine ok((surface_desc.ddsCaps.dwCaps & ~placement) == (DDSCAPS_FLIP | DDSCAPS_COMPLEX | DDSCAPS_BACKBUFFER),
+    ok((surface_desc.ddsCaps.dwCaps & ~placement) == (DDSCAPS_FLIP | DDSCAPS_COMPLEX | DDSCAPS_BACKBUFFER),
             "Got unexpected caps %#x.\n", surface_desc.ddsCaps.dwCaps);
 
     hr = IDirectDrawSurface4_GetAttachedSurface(backbuffer1, &caps, &backbuffer2);
@@ -4877,7 +4877,7 @@ static void test_flip(void)
     surface_desc.dwSize = sizeof(surface_desc);
     hr = IDirectDrawSurface4_GetSurfaceDesc(backbuffer2, &surface_desc);
     ok(SUCCEEDED(hr), "Failed to get surface desc, hr %#x.\n", hr);
-    todo_wine ok((surface_desc.ddsCaps.dwCaps & ~placement) == (DDSCAPS_FLIP | DDSCAPS_COMPLEX),
+    ok((surface_desc.ddsCaps.dwCaps & ~placement) == (DDSCAPS_FLIP | DDSCAPS_COMPLEX),
             "Got unexpected caps %#x.\n", surface_desc.ddsCaps.dwCaps);
 
     hr = IDirectDrawSurface4_GetAttachedSurface(backbuffer2, &caps, &backbuffer3);
@@ -4886,7 +4886,7 @@ static void test_flip(void)
     surface_desc.dwSize = sizeof(surface_desc);
     hr = IDirectDrawSurface4_GetSurfaceDesc(backbuffer3, &surface_desc);
     ok(SUCCEEDED(hr), "Failed to get surface desc, hr %#x.\n", hr);
-    todo_wine ok((surface_desc.ddsCaps.dwCaps & ~placement) == (DDSCAPS_FLIP | DDSCAPS_COMPLEX),
+    ok((surface_desc.ddsCaps.dwCaps & ~placement) == (DDSCAPS_FLIP | DDSCAPS_COMPLEX),
             "Got unexpected caps %#x.\n", surface_desc.ddsCaps.dwCaps);
 
     hr = IDirectDrawSurface4_GetAttachedSurface(backbuffer3, &caps, &surface);
diff --git a/dlls/ddraw/tests/ddraw7.c b/dlls/ddraw/tests/ddraw7.c
index 0c099a5..743c4a2 100644
--- a/dlls/ddraw/tests/ddraw7.c
+++ b/dlls/ddraw/tests/ddraw7.c
@@ -4755,7 +4755,7 @@ static void test_flip(void)
     surface_desc.dwSize = sizeof(surface_desc);
     hr = IDirectDrawSurface7_GetSurfaceDesc(backbuffer1, &surface_desc);
     ok(SUCCEEDED(hr), "Failed to get surface desc, hr %#x.\n", hr);
-    todo_wine ok((surface_desc.ddsCaps.dwCaps & ~placement) == (DDSCAPS_FLIP | DDSCAPS_COMPLEX | DDSCAPS_BACKBUFFER),
+    ok((surface_desc.ddsCaps.dwCaps & ~placement) == (DDSCAPS_FLIP | DDSCAPS_COMPLEX | DDSCAPS_BACKBUFFER),
             "Got unexpected caps %#x.\n", surface_desc.ddsCaps.dwCaps);
 
     hr = IDirectDrawSurface7_GetAttachedSurface(backbuffer1, &caps, &backbuffer2);
@@ -4764,7 +4764,7 @@ static void test_flip(void)
     surface_desc.dwSize = sizeof(surface_desc);
     hr = IDirectDrawSurface7_GetSurfaceDesc(backbuffer2, &surface_desc);
     ok(SUCCEEDED(hr), "Failed to get surface desc, hr %#x.\n", hr);
-    todo_wine ok((surface_desc.ddsCaps.dwCaps & ~placement) == (DDSCAPS_FLIP | DDSCAPS_COMPLEX),
+    ok((surface_desc.ddsCaps.dwCaps & ~placement) == (DDSCAPS_FLIP | DDSCAPS_COMPLEX),
             "Got unexpected caps %#x.\n", surface_desc.ddsCaps.dwCaps);
 
     hr = IDirectDrawSurface7_GetAttachedSurface(backbuffer2, &caps, &backbuffer3);
@@ -4773,7 +4773,7 @@ static void test_flip(void)
     surface_desc.dwSize = sizeof(surface_desc);
     hr = IDirectDrawSurface7_GetSurfaceDesc(backbuffer3, &surface_desc);
     ok(SUCCEEDED(hr), "Failed to get surface desc, hr %#x.\n", hr);
-    todo_wine ok((surface_desc.ddsCaps.dwCaps & ~placement) == (DDSCAPS_FLIP | DDSCAPS_COMPLEX),
+    ok((surface_desc.ddsCaps.dwCaps & ~placement) == (DDSCAPS_FLIP | DDSCAPS_COMPLEX),
             "Got unexpected caps %#x.\n", surface_desc.ddsCaps.dwCaps);
 
     hr = IDirectDrawSurface7_GetAttachedSurface(backbuffer3, &caps, &surface);
-- 
1.7.10.4




More information about the wine-patches mailing list