Henri Verbeet : wined3d: Don' t set WINED3DUSAGE_RENDERTARGET on the front buffer.

Alexandre Julliard julliard at winehq.org
Wed Sep 4 15:08:31 CDT 2013


Module: wine
Branch: master
Commit: 6325f3ddd8d9922b49608b3afc096eaebada737d
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=6325f3ddd8d9922b49608b3afc096eaebada737d

Author: Henri Verbeet <hverbeet at codeweavers.com>
Date:   Wed Sep  4 08:56:45 2013 +0200

wined3d: Don't set WINED3DUSAGE_RENDERTARGET on the front buffer.

We never render directly to the front buffer, and in case of e.g. a P8 front
buffer, we would fail surface creation if we were to enforce format
restrictions.

---

 dlls/wined3d/swapchain.c |    3 ++-
 1 files changed, 2 insertions(+), 1 deletions(-)

diff --git a/dlls/wined3d/swapchain.c b/dlls/wined3d/swapchain.c
index d1cb2f5..981d946 100644
--- a/dlls/wined3d/swapchain.c
+++ b/dlls/wined3d/swapchain.c
@@ -882,7 +882,7 @@ static HRESULT swapchain_init(struct wined3d_swapchain *swapchain, struct wined3
     surface_desc.format = swapchain->desc.backbuffer_format;
     surface_desc.multisample_type = swapchain->desc.multisample_type;
     surface_desc.multisample_quality = swapchain->desc.multisample_quality;
-    surface_desc.usage = WINED3DUSAGE_RENDERTARGET;
+    surface_desc.usage = 0;
     surface_desc.pool = WINED3D_POOL_DEFAULT;
     surface_desc.width = swapchain->desc.backbuffer_width;
     surface_desc.height = swapchain->desc.backbuffer_height;
@@ -992,6 +992,7 @@ static HRESULT swapchain_init(struct wined3d_swapchain *swapchain, struct wined3
             goto err;
         }
 
+        surface_desc.usage |= WINED3DUSAGE_RENDERTARGET;
         for (i = 0; i < swapchain->desc.backbuffer_count; ++i)
         {
             TRACE("Creating back buffer %u.\n", i);




More information about the wine-cvs mailing list