diff --git a/library/bignum.c b/library/bignum.c index fd9d5b8a8..dafeb4c3a 100644 --- a/library/bignum.c +++ b/library/bignum.c @@ -151,9 +151,10 @@ int mbedtls_mpi_shrink( mbedtls_mpi *X, size_t nblimbs ) mbedtls_mpi_uint *p; size_t i; - /* Actually resize up in this case */ + /* Actually resize up if there are currently fewer than nblimbs limbs. */ if( X->n <= nblimbs ) return( mbedtls_mpi_grow( X, nblimbs ) ); + /* Now X->n > nblimbs >= 0. */ for( i = X->n - 1; i > 0; i-- ) if( X->p[i] != 0 )