plugins: fix out of bounds read in chopper

GCC complains about this when compiling with UBSan.

Change-Id: I4bd8ff2b47882ab95620dc7750a9a80f823cc2ea
This commit is contained in:
Aidan MacDonald 2022-05-02 15:38:11 +01:00
parent ab71b9e334
commit 366f00a3d3

View file

@ -523,19 +523,18 @@ static void chopAddBlock(int x,int y,int sx,int sy, int indexOverride)
static void chopAddParticle(int x,int y,int sx,int sy)
{
int i=0;
while(mParticles[i].bIsActive && i < NUMBER_OF_PARTICLES)
i++;
if(i==NUMBER_OF_PARTICLES)
return;
mParticles[i].bIsActive = 1;
mParticles[i].iWorldX = x;
mParticles[i].iWorldY = y;
mParticles[i].iSpeedX = sx;
mParticles[i].iSpeedY = sy;
for(int i = 0; i < NUMBER_OF_PARTICLES; ++i)
{
if(!mParticles[i].bIsActive)
{
mParticles[i].bIsActive = 1;
mParticles[i].iWorldX = x;
mParticles[i].iWorldY = y;
mParticles[i].iSpeedX = sx;
mParticles[i].iSpeedY = sy;
return;
}
}
}
static void chopGenerateBlockIfNeeded(void)