Remove the correct intervals from the surface when validating
This commit is contained in:
		@@ -1285,7 +1285,7 @@ void RasterizerCacheOpenGL::ValidateSurface(const Surface& surface, PAddr addr,
 | 
			
		||||
        if (copy_surface != nullptr) {
 | 
			
		||||
            SurfaceInterval copy_interval = params.GetCopyableInterval(copy_surface);
 | 
			
		||||
            CopySurface(copy_surface, surface, copy_interval);
 | 
			
		||||
            surface->invalid_regions.erase(interval);
 | 
			
		||||
            surface->invalid_regions.erase(copy_interval);
 | 
			
		||||
            continue;
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
@@ -1293,7 +1293,7 @@ void RasterizerCacheOpenGL::ValidateSurface(const Surface& surface, PAddr addr,
 | 
			
		||||
        FlushRegion(params.addr, params.size);
 | 
			
		||||
        surface->LoadGLBuffer(params.addr, params.end);
 | 
			
		||||
        surface->UploadGLTexture(surface->GetSubRect(params));
 | 
			
		||||
        surface->invalid_regions.erase(interval);
 | 
			
		||||
        surface->invalid_regions.erase(params.GetInterval());
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user