From 89c9c54743771cad7a2538a8ab4679977d07dc0b Mon Sep 17 00:00:00 2001 From: kd-11 Date: Mon, 31 Dec 2018 21:11:41 +0300 Subject: [PATCH] rsx: Minor hot-fix - Pitch 0 makes sense if width == 1 and height == 1 --- rpcs3/Emu/RSX/Common/TextureUtils.cpp | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/rpcs3/Emu/RSX/Common/TextureUtils.cpp b/rpcs3/Emu/RSX/Common/TextureUtils.cpp index 784afd25e2..b1b2ab1da5 100644 --- a/rpcs3/Emu/RSX/Common/TextureUtils.cpp +++ b/rpcs3/Emu/RSX/Common/TextureUtils.cpp @@ -590,7 +590,17 @@ static size_t get_texture_size(u32 format, u16 width, u16 height, u16 depth, u32 const bool packed = !(format & CELL_GCM_TEXTURE_LN); const auto texel_rows_per_line = get_format_texel_rows_per_line(gcm_format); - verify(HERE), packed || pitch; + if (!pitch && !packed) + { + if (width > 1 || height > 1) + { + // If width == 1, the scanning just returns texel 0, so it is a valid setup + LOG_ERROR(RSX, "Invalid texture pitch setup, width=%d, height=%d, format=0x%x(0x%x)", + width, height, format, gcm_format); + } + + pitch = get_format_packed_pitch(gcm_format, width); + } u32 size = 0; if (!packed)