On Thu, 24 Mar 2022 at 20:06, Paul Gofman pgofman@codeweavers.com wrote:
diff --git a/dlls/wined3d/texture.c b/dlls/wined3d/texture.c index fdd2c70c667..94a1b848a2a 100644 --- a/dlls/wined3d/texture.c +++ b/dlls/wined3d/texture.c @@ -3895,11 +3895,14 @@ static HRESULT wined3d_texture_init(struct wined3d_texture *texture, const struc texture->flags |= WINED3D_TEXTURE_GENERATE_MIPMAPS; }
- if (flags & WINED3D_TEXTURE_CREATE_RECORD_DIRTY_REGIONS
&& !(texture->dirty_regions = heap_calloc(texture->layer_count, sizeof(*texture->dirty_regions))))
- if (flags & WINED3D_TEXTURE_CREATE_RECORD_DIRTY_REGIONS) {
wined3d_texture_cleanup_sync(texture);
return E_OUTOFMEMORY;
if (!(texture->dirty_regions = heap_calloc(texture->layer_count, sizeof(*texture->dirty_regions))))
{
wined3d_texture_cleanup_sync(texture);
return E_OUTOFMEMORY;
}
}wined3d_texture_dirty_region_add(texture, 0, NULL);
Shouldn't we be doing that for all layers? (In case of d3d8 in particular, that would mean all faces of a cube texture.)