[PATCH 1/5] wined3d: Replace surface_update_draw_binding() with wined3d_resource_update_draw_binding().

Henri Verbeet hverbeet at codeweavers.com
Wed Aug 20 06:19:59 CDT 2014


---
 dlls/wined3d/resource.c        |   10 ++++++++++
 dlls/wined3d/surface.c         |   14 ++------------
 dlls/wined3d/swapchain.c       |    4 ++--
 dlls/wined3d/wined3d_private.h |    2 +-
 4 files changed, 15 insertions(+), 15 deletions(-)

diff --git a/dlls/wined3d/resource.c b/dlls/wined3d/resource.c
index dd31cb6..cb7ee9e 100644
--- a/dlls/wined3d/resource.c
+++ b/dlls/wined3d/resource.c
@@ -323,3 +323,13 @@ BOOL wined3d_resource_is_offscreen(struct wined3d_resource *resource)
      * offscreen, otherwise onscreen */
     return swapchain->render_to_fbo;
 }
+
+void wined3d_resource_update_draw_binding(struct wined3d_resource *resource)
+{
+    if (!wined3d_resource_is_offscreen(resource) || wined3d_settings.offscreen_rendering_mode != ORM_FBO)
+        resource->draw_binding = WINED3D_LOCATION_DRAWABLE;
+    else if (resource->multisample_type)
+        resource->draw_binding = WINED3D_LOCATION_RB_MULTISAMPLE;
+    else
+        resource->draw_binding = WINED3D_LOCATION_TEXTURE_RGB;
+}
diff --git a/dlls/wined3d/surface.c b/dlls/wined3d/surface.c
index 3110e56..6603d46 100644
--- a/dlls/wined3d/surface.c
+++ b/dlls/wined3d/surface.c
@@ -112,16 +112,6 @@ void wined3d_surface_destroy(struct wined3d_surface *surface)
     HeapFree(GetProcessHeap(), 0, surface);
 }
 
-void surface_update_draw_binding(struct wined3d_surface *surface)
-{
-    if (!wined3d_resource_is_offscreen(&surface->resource) || wined3d_settings.offscreen_rendering_mode != ORM_FBO)
-        surface->resource.draw_binding = WINED3D_LOCATION_DRAWABLE;
-    else if (surface->resource.multisample_type)
-        surface->resource.draw_binding = WINED3D_LOCATION_RB_MULTISAMPLE;
-    else
-        surface->resource.draw_binding = WINED3D_LOCATION_TEXTURE_RGB;
-}
-
 void surface_get_drawable_size(const struct wined3d_surface *surface, const struct wined3d_context *context,
         unsigned int *width, unsigned int *height)
 {
@@ -157,7 +147,7 @@ void surface_set_swapchain(struct wined3d_surface *surface, struct wined3d_swapc
     TRACE("surface %p, swapchain %p.\n", surface, swapchain);
 
     surface->swapchain = swapchain;
-    surface_update_draw_binding(surface);
+    wined3d_resource_update_draw_binding(&surface->resource);
 }
 
 struct blt_info
@@ -5974,7 +5964,7 @@ static HRESULT surface_init(struct wined3d_surface *surface, struct wined3d_text
     }
 
     surface->container = container;
-    surface_update_draw_binding(surface);
+    wined3d_resource_update_draw_binding(&surface->resource);
     surface_validate_location(surface, WINED3D_LOCATION_SYSMEM);
     list_init(&surface->renderbuffers);
     list_init(&surface->overlays);
diff --git a/dlls/wined3d/swapchain.c b/dlls/wined3d/swapchain.c
index 1648a11..1582193 100644
--- a/dlls/wined3d/swapchain.c
+++ b/dlls/wined3d/swapchain.c
@@ -1144,10 +1144,10 @@ void swapchain_update_draw_bindings(struct wined3d_swapchain *swapchain)
 {
     UINT i;
 
-    surface_update_draw_binding(swapchain->front_buffer);
+    wined3d_resource_update_draw_binding(&swapchain->front_buffer->resource);
 
     for (i = 0; i < swapchain->desc.backbuffer_count; ++i)
     {
-        surface_update_draw_binding(swapchain->back_buffers[i]);
+        wined3d_resource_update_draw_binding(&swapchain->back_buffers[i]->resource);
     }
 }
diff --git a/dlls/wined3d/wined3d_private.h b/dlls/wined3d/wined3d_private.h
index 118b5c8..086d13c 100644
--- a/dlls/wined3d/wined3d_private.h
+++ b/dlls/wined3d/wined3d_private.h
@@ -2065,6 +2065,7 @@ GLbitfield wined3d_resource_gl_map_flags(DWORD d3d_flags) DECLSPEC_HIDDEN;
 GLenum wined3d_resource_gl_legacy_map_flags(DWORD d3d_flags) DECLSPEC_HIDDEN;
 BOOL wined3d_resource_is_offscreen(struct wined3d_resource *resource) DECLSPEC_HIDDEN;
 DWORD wined3d_resource_sanitize_map_flags(const struct wined3d_resource *resource, DWORD flags) DECLSPEC_HIDDEN;
+void wined3d_resource_update_draw_binding(struct wined3d_resource *resource) DECLSPEC_HIDDEN;
 
 /* Tests show that the start address of resources is 32 byte aligned */
 #define RESOURCE_ALIGNMENT 16
@@ -2305,7 +2306,6 @@ void surface_set_compatible_renderbuffer(struct wined3d_surface *surface,
 void surface_set_swapchain(struct wined3d_surface *surface, struct wined3d_swapchain *swapchain) DECLSPEC_HIDDEN;
 void surface_set_texture_target(struct wined3d_surface *surface, GLenum target, GLint level) DECLSPEC_HIDDEN;
 void surface_translate_drawable_coords(const struct wined3d_surface *surface, HWND window, RECT *rect) DECLSPEC_HIDDEN;
-void surface_update_draw_binding(struct wined3d_surface *surface) DECLSPEC_HIDDEN;
 HRESULT surface_upload_from_surface(struct wined3d_surface *dst_surface, const POINT *dst_point,
         struct wined3d_surface *src_surface, const RECT *src_rect) DECLSPEC_HIDDEN;
 void surface_validate_location(struct wined3d_surface *surface, DWORD location) DECLSPEC_HIDDEN;
-- 
1.7.10.4




More information about the wine-patches mailing list