SP int: stop CodeSonar complaining about i being negatve

n is checked for negative and fail out in that case.
i is n devided by a positive constant and can never be negative.
This commit is contained in:
Sean Parkinson
2025-01-06 10:04:14 +10:00
parent 71b7d0c9de
commit 13ce92cc1f

View File

@ -8527,13 +8527,13 @@ int sp_rshb(const sp_int* a, int n, sp_int* r)
{ {
int err = MP_OKAY; int err = MP_OKAY;
/* Number of digits to shift down. */ /* Number of digits to shift down. */
sp_size_t i = (sp_size_t)(n >> SP_WORD_SHIFT); sp_size_t i;
if ((a == NULL) || (n < 0)) { if ((a == NULL) || (n < 0)) {
err = MP_VAL; err = MP_VAL;
} }
/* Handle case where shifting out all digits. */ /* Handle case where shifting out all digits. */
if ((err == MP_OKAY) && (i >= a->used)) { else if ((i = (sp_size_t)(n >> SP_WORD_SHIFT)) >= a->used) {
_sp_zero(r); _sp_zero(r);
} }
/* Change callers when more error cases returned. */ /* Change callers when more error cases returned. */