diff --git a/library/bignum.c b/library/bignum.c index 4cebd95a95..5ddcf729b5 100644 --- a/library/bignum.c +++ b/library/bignum.c @@ -1671,8 +1671,8 @@ int mbedtls_mpi_exp_mod(mbedtls_mpi *X, const mbedtls_mpi *A, /* * Allocate working memory for mbedtls_mpi_core_exp_mod() */ - MBEDTLS_MPI_CHK(mbedtls_mpi_grow(&T, - mbedtls_mpi_core_exp_mod_working_limbs(N->n, E->n))); + size_t T_limbs = mbedtls_mpi_core_exp_mod_working_limbs(N->n, E->n); + MBEDTLS_MPI_CHK(mbedtls_mpi_grow(&T, T_limbs)); /* * Convert to and from Montgomery around mbedtls_mpi_core_exp_mod().