diff --git a/ChangeLog b/ChangeLog index 67acec44ad520047c0555a19e6088c8efc56e164..507e0438cfd93a2940b8a13558ae3a539efc7c1d 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +2023-05-15 Niels Möller <nisse@lysator.liu.se> + + * eccdata.c (output_bignum_redc): Add missing mpz_clear, reported + by Noah Watkins. + (output_digits): Delete a gratuitous mpz_init. + 2023-05-14 Niels Möller <nisse@lysator.liu.se> * Released nettle-3.9. diff --git a/eccdata.c b/eccdata.c index e0726e8d325de006fe6610df8c63673d2e5aff4b..3f8e3f13d6530eaf1552bdcd24a321cd870ce4a3 100644 --- a/eccdata.c +++ b/eccdata.c @@ -1074,7 +1074,7 @@ output_digits (const mpz_t x, unsigned i; const char *suffix; - mpz_init (t); + mpz_init_set (t, x); mpz_init (mask); mpz_init (limb); @@ -1083,8 +1083,6 @@ output_digits (const mpz_t x, suffix = bits_per_limb > 32 ? "ULL" : "UL"; - mpz_init_set (t, x); - for (i = 0; i < size; i++) { if ( (i % 8) == 0) @@ -1120,6 +1118,7 @@ output_bignum_redc (const char *name, const mpz_t x, const mpz_t p, mpz_mul_2exp (t, x, size * bits_per_limb); mpz_mod (t, t, p); output_bignum (name, t, size, bits_per_limb); + mpz_clear (t); } static void