wined3d: Don't set SFLAG_DYNLOCK at surface creation.

We no longer depend on SFLAG_DYNLOCK to create buffers and PIN_SYSMEM
makes sure the address remains constant.
This commit is contained in:
Stefan Dösinger 2014-01-17 13:27:17 +01:00 committed by Alexandre Julliard
parent b81e560531
commit 5630cb5dc8
1 changed files with 0 additions and 10 deletions

View File

@ -6385,16 +6385,6 @@ static HRESULT surface_init(struct wined3d_surface *surface, struct wined3d_text
if (lockable || desc->format == WINED3DFMT_D16_LOCKABLE) if (lockable || desc->format == WINED3DFMT_D16_LOCKABLE)
surface->resource.access_flags |= WINED3D_RESOURCE_ACCESS_CPU; surface->resource.access_flags |= WINED3D_RESOURCE_ACCESS_CPU;
/* I'm not sure if this qualifies as a hack or as an optimization. It
* seems reasonable to assume that lockable render targets will get
* locked, so we might as well set SFLAG_DYNLOCK right at surface
* creation. However, the other reason we want to do this is that several
* ddraw applications access surface memory while the surface isn't
* mapped. The SFLAG_DYNLOCK behaviour of keeping SYSMEM around for
* future locks prevents these from crashing. */
if (lockable && (desc->usage & WINED3DUSAGE_RENDERTARGET))
surface->flags |= SFLAG_DYNLOCK;
surface->map_binding = WINED3D_LOCATION_SYSMEM; surface->map_binding = WINED3D_LOCATION_SYSMEM;
/* Call the private setup routine */ /* Call the private setup routine */