wined3d: Redownload the surface data in case of a palette change. This fixes a lot of redrawing problems in Red Alert.
This commit is contained in:
parent
424e9c3e08
commit
35e0bb8225
|
@ -297,8 +297,9 @@ HRESULT WINAPI IWineD3DBaseSurfaceImpl_RealizePalette(IWineD3DSurface *iface) {
|
||||||
if(This->resource.format == WINED3DFMT_P8 ||
|
if(This->resource.format == WINED3DFMT_P8 ||
|
||||||
This->resource.format == WINED3DFMT_A8P8)
|
This->resource.format == WINED3DFMT_A8P8)
|
||||||
{
|
{
|
||||||
if(!This->Flags & SFLAG_INSYSMEM) {
|
if(!(This->Flags & SFLAG_INSYSMEM)) {
|
||||||
FIXME("Palette changed with surface that does not have an up to date system memory copy\n");
|
TRACE("Palette changed with surface that does not have an up to date system memory copy\n");
|
||||||
|
IWineD3DSurface_LoadLocation(iface, SFLAG_INSYSMEM, NULL);
|
||||||
}
|
}
|
||||||
TRACE("Dirtifying surface\n");
|
TRACE("Dirtifying surface\n");
|
||||||
IWineD3DSurface_ModifyLocation(iface, SFLAG_INSYSMEM, TRUE);
|
IWineD3DSurface_ModifyLocation(iface, SFLAG_INSYSMEM, TRUE);
|
||||||
|
|
Loading…
Reference in New Issue