mirror of
git://source.winehq.org/git/wine.git
synced 2024-10-31 08:49:15 +00:00
wined3d: Mark managed textures as dirty if applicable in wined3d_device_evict_managed_resources().
This commit is contained in:
parent
44d6f2adbc
commit
25127c5637
1 changed files with 17 additions and 2 deletions
|
@ -5521,8 +5521,23 @@ void CDECL wined3d_device_evict_managed_resources(struct wined3d_device *device)
|
||||||
|
|
||||||
if ((resource->usage & WINED3DUSAGE_MANAGED) && !resource->map_count)
|
if ((resource->usage & WINED3DUSAGE_MANAGED) && !resource->map_count)
|
||||||
{
|
{
|
||||||
TRACE("Evicting %p.\n", resource);
|
if (resource->access & WINED3D_RESOURCE_ACCESS_GPU)
|
||||||
wined3d_cs_emit_unload_resource(device->cs, resource);
|
{
|
||||||
|
TRACE("Evicting %p.\n", resource);
|
||||||
|
wined3d_cs_emit_unload_resource(device->cs, resource);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (resource->type != WINED3D_RTYPE_BUFFER)
|
||||||
|
{
|
||||||
|
struct wined3d_texture *texture = texture_from_resource(resource);
|
||||||
|
unsigned int i;
|
||||||
|
|
||||||
|
if (texture->dirty_regions)
|
||||||
|
{
|
||||||
|
for (i = 0; i < texture->layer_count; ++i)
|
||||||
|
wined3d_texture_add_dirty_region(texture, i, NULL);
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue