wined3d: Call wined3d_texture_set_dirty() in wined3d_volume_invalidate_location().

Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
oldstable
Stefan Dösinger 2016-03-04 00:05:25 +01:00 committed by Alexandre Julliard
parent 4b34b5646c
commit b23f21a9fb
1 changed files with 4 additions and 3 deletions

View File

@ -109,7 +109,11 @@ void wined3d_volume_validate_location(struct wined3d_volume *volume, DWORD locat
void wined3d_volume_invalidate_location(struct wined3d_volume *volume, DWORD location)
{
TRACE("Volume %p, clearing %s.\n", volume, wined3d_debug_location(location));
if (location & (WINED3D_LOCATION_TEXTURE_RGB | WINED3D_LOCATION_TEXTURE_SRGB))
wined3d_texture_set_dirty(volume->container);
volume->locations &= ~location;
TRACE("new location flags are %s.\n", wined3d_debug_location(volume->locations));
}
@ -552,10 +556,7 @@ HRESULT wined3d_volume_map(struct wined3d_volume *volume,
}
if (!(flags & (WINED3D_MAP_NO_DIRTY_UPDATE | WINED3D_MAP_READONLY)))
{
wined3d_texture_set_dirty(texture);
wined3d_volume_invalidate_location(volume, ~volume->resource.map_binding);
}
volume->resource.map_count++;