diff --git a/rpcs3/Emu/RSX/RSXThread.cpp b/rpcs3/Emu/RSX/RSXThread.cpp index d16ef65e99..234c1d7d90 100644 --- a/rpcs3/Emu/RSX/RSXThread.cpp +++ b/rpcs3/Emu/RSX/RSXThread.cpp @@ -3248,6 +3248,9 @@ namespace rsx return result_none; const auto memory_end = memory_address + memory_range; + + AUDIT(memory_end >= memory_address); + u32 sync_address = 0; occlusion_query_info* query = nullptr; diff --git a/rpcs3/Emu/RSX/rsx_methods.cpp b/rpcs3/Emu/RSX/rsx_methods.cpp index ef7d7077c7..90c55d34fc 100644 --- a/rpcs3/Emu/RSX/rsx_methods.cpp +++ b/rpcs3/Emu/RSX/rsx_methods.cpp @@ -1000,7 +1000,7 @@ namespace rsx else { const u32 data_length = in_pitch * (in_h - 1) + src_line_length; - rsx->read_barrier(src_address, dst_address, true); + rsx->read_barrier(src_address, data_length, true); } u8* pixels_src = vm::_ptr(src_address + in_offset);