rsx: Fix invalid format checks for DMA sections which are typeless

This commit is contained in:
kd-11 2019-11-18 21:39:40 +03:00 committed by kd-11
commit 41c3180276

View file

@ -2247,8 +2247,10 @@ namespace rsx
dst_area = old_dst_area;
}
const bool format_check = (src_is_render_target || is_format_convert);
if (!use_null_region && cached_dest && format_check)
if (cached_dest && cached_dest->get_context() != texture_upload_context::dma)
{
// NOTE: DMA sections are plain memory blocks with no format!
if (src_is_render_target || is_format_convert)
{
bool src_is_depth;
if (is_format_convert)
@ -2258,7 +2260,7 @@ namespace rsx
else
{
verify(HERE), src_is_render_target;
src_is_depth = (typeless_info.src_is_typeless)? false : src_subres.is_depth;
src_is_depth = (typeless_info.src_is_typeless) ? false : src_subres.is_depth;
}
if (cached_dest->is_depth_texture() != src_is_depth)
@ -2279,6 +2281,7 @@ namespace rsx
dst_is_depth_surface = cached_dest->is_depth_texture();
}
}
}
else
{
// Destination dimensions are relaxed (true)