mirror of
https://github.com/hrydgard/ppsspp.git
synced 2025-04-02 11:01:50 -04:00
GPUCommonHW: Check range of indexes for indexed draws.
This commit is contained in:
parent
cb79783539
commit
8b4f80c562
1 changed files with 3 additions and 2 deletions
|
@ -973,8 +973,9 @@ void GPUCommonHW::Execute_Prim(u32 op, u32 diff) {
|
|||
u32 vertexType = gstate.vertType;
|
||||
if ((vertexType & GE_VTYPE_IDX_MASK) != GE_VTYPE_IDX_NONE) {
|
||||
u32 indexAddr = gstate_c.indexAddr;
|
||||
if (!Memory::IsValidAddress(indexAddr)) {
|
||||
ERROR_LOG(G3D, "Bad index address %08x!", indexAddr);
|
||||
u32 indexSize = (vertexType & GE_VTYPE_IDX_MASK) >> GE_VTYPE_IDX_SHIFT;
|
||||
if (!Memory::IsValidRange(indexAddr, count * indexSize)) {
|
||||
ERROR_LOG(G3D, "Bad index address %08x (%d)!", indexAddr, count);
|
||||
return;
|
||||
}
|
||||
inds = Memory::GetPointerUnchecked(indexAddr);
|
||||
|
|
Loading…
Add table
Reference in a new issue