Merge pull request #1291 from Sierraffinity/master

Fix/document possible division by zero in ConvertScaleParam
This commit is contained in:
GriffinR 2021-01-04 20:48:58 -05:00 committed by GitHub
commit 1b2c9d00ca
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 6 additions and 1 deletions

View File

@ -1320,6 +1320,11 @@ void ApplyAffineAnimFrameRelativeAndUpdateMatrix(u8 matrixNum, struct AffineAnim
s16 ConvertScaleParam(s16 scale)
{
s32 val = 0x10000;
// UB: possible division by zero
#ifdef UBFIX
if (scale == 0)
return 0;
#endif //UBFIX
return val / scale;
}

View File

@ -3042,7 +3042,7 @@ static void SpriteCB_PokedexListMonSprite(struct Sprite *sprite)
if (gSineTable[sprite->data[5] + 64] != 0)
var = 0x10000 / gSineTable[sprite->data[5] + 64];
else
var = 0xFFFF;
var = 0;
#else
var = 0x10000 / gSineTable[sprite->data[5] + 64];
#endif //UBFIX