Henri Verbeet : wined3d: Replace surface_modify_location(surface, location, FALSE) calls with surface_invalidate_location().
Alexandre Julliard
julliard at winehq.org
Tue Sep 10 14:49:56 CDT 2013
Module: wine
Branch: master
Commit: b62915dabb8c009f305d77109bbdbe774b701225
URL: http://source.winehq.org/git/wine.git/?a=commit;h=b62915dabb8c009f305d77109bbdbe774b701225
Author: Henri Verbeet <hverbeet at codeweavers.com>
Date: Tue Sep 10 09:32:33 2013 +0200
wined3d: Replace surface_modify_location(surface, location, FALSE) calls with surface_invalidate_location().
---
dlls/wined3d/context.c | 2 +-
dlls/wined3d/surface.c | 14 ++++++--------
dlls/wined3d/swapchain.c | 2 +-
dlls/wined3d/wined3d_private.h | 1 +
4 files changed, 9 insertions(+), 10 deletions(-)
diff --git a/dlls/wined3d/context.c b/dlls/wined3d/context.c
index 4a079cf..026158d 100644
--- a/dlls/wined3d/context.c
+++ b/dlls/wined3d/context.c
@@ -2453,7 +2453,7 @@ static void context_setup_target(struct wined3d_context *context, struct wined3d
if (context->current_rt->texture_name_srgb)
surface_internal_preload(context->current_rt, SRGB_SRGB);
surface_internal_preload(context->current_rt, SRGB_RGB);
- surface_modify_location(context->current_rt, SFLAG_INDRAWABLE, FALSE);
+ surface_invalidate_location(context->current_rt, SFLAG_INDRAWABLE);
}
}
diff --git a/dlls/wined3d/surface.c b/dlls/wined3d/surface.c
index ee404c1..01035b4 100644
--- a/dlls/wined3d/surface.c
+++ b/dlls/wined3d/surface.c
@@ -605,7 +605,7 @@ static void surface_evict_sysmem(struct wined3d_surface *surface)
wined3d_resource_free_sysmem(surface->resource.heap_memory);
surface->resource.allocatedMemory = NULL;
surface->resource.heap_memory = NULL;
- surface_modify_location(surface, SFLAG_INSYSMEM, FALSE);
+ surface_invalidate_location(surface, SFLAG_INSYSMEM);
}
/* Context activation is done by the caller. */
@@ -703,8 +703,7 @@ static void surface_release_client_storage(struct wined3d_surface *surface)
context_release(context);
- surface_modify_location(surface, SFLAG_INSRGBTEX, FALSE);
- surface_modify_location(surface, SFLAG_INTEXTURE, FALSE);
+ surface_invalidate_location(surface, SFLAG_INTEXTURE | SFLAG_INSRGBTEX);
surface_force_reload(surface);
}
@@ -818,7 +817,7 @@ static void surface_realize_palette(struct wined3d_surface *surface)
/* We want to force a palette refresh, so mark the drawable as not being up to date */
if (!surface_is_offscreen(surface))
- surface_modify_location(surface, SFLAG_INDRAWABLE, FALSE);
+ surface_invalidate_location(surface, SFLAG_INDRAWABLE);
}
else
{
@@ -1528,10 +1527,9 @@ static void surface_unload(struct wined3d_resource *resource)
{
/* Load the surface into system memory */
surface_load_location(surface, SFLAG_INSYSMEM, NULL);
- surface_modify_location(surface, surface->draw_binding, FALSE);
+ surface_invalidate_location(surface, surface->draw_binding);
}
- surface_modify_location(surface, SFLAG_INTEXTURE, FALSE);
- surface_modify_location(surface, SFLAG_INSRGBTEX, FALSE);
+ surface_invalidate_location(surface, SFLAG_INTEXTURE | SFLAG_INSRGBTEX);
surface->flags &= ~(SFLAG_ALLOCATED | SFLAG_SRGBALLOCATED);
context = context_acquire(device, NULL);
@@ -5347,7 +5345,7 @@ static void surface_validate_location(struct wined3d_surface *surface, DWORD loc
}
}
-static void surface_invalidate_location(struct wined3d_surface *surface, DWORD location)
+void surface_invalidate_location(struct wined3d_surface *surface, DWORD location)
{
TRACE("surface %p, location %s.\n", surface, debug_surflocation(location & SFLAG_LOCATIONS));
diff --git a/dlls/wined3d/swapchain.c b/dlls/wined3d/swapchain.c
index 981d946..48917fd 100644
--- a/dlls/wined3d/swapchain.c
+++ b/dlls/wined3d/swapchain.c
@@ -521,7 +521,7 @@ static void swapchain_gl_present(struct wined3d_swapchain *swapchain, const RECT
if (!swapchain->render_to_fbo && render_to_fbo && wined3d_settings.offscreen_rendering_mode == ORM_FBO)
{
surface_load_location(back_buffer, SFLAG_INTEXTURE, NULL);
- surface_modify_location(back_buffer, SFLAG_INDRAWABLE, FALSE);
+ surface_invalidate_location(back_buffer, SFLAG_INDRAWABLE);
swapchain->render_to_fbo = TRUE;
swapchain_update_draw_bindings(swapchain);
}
diff --git a/dlls/wined3d/wined3d_private.h b/dlls/wined3d/wined3d_private.h
index 3fbad8b..06e17f3 100644
--- a/dlls/wined3d/wined3d_private.h
+++ b/dlls/wined3d/wined3d_private.h
@@ -2253,6 +2253,7 @@ HRESULT surface_color_fill(struct wined3d_surface *s,
const RECT *rect, const struct wined3d_color *color) DECLSPEC_HIDDEN;
GLenum surface_get_gl_buffer(const struct wined3d_surface *surface) DECLSPEC_HIDDEN;
void surface_internal_preload(struct wined3d_surface *surface, enum WINED3DSRGB srgb) DECLSPEC_HIDDEN;
+void surface_invalidate_location(struct wined3d_surface *surface, DWORD location) DECLSPEC_HIDDEN;
BOOL surface_is_offscreen(const struct wined3d_surface *surface) DECLSPEC_HIDDEN;
HRESULT surface_load(struct wined3d_surface *surface, BOOL srgb) DECLSPEC_HIDDEN;
void surface_load_ds_location(struct wined3d_surface *surface,
More information about the wine-cvs
mailing list