From 604d7e9c86f723ffffd32c317206f6f409155d4c Mon Sep 17 00:00:00 2001 From: "Yukihiro \"Matz\" Matsumoto" Date: Thu, 27 Oct 2022 23:15:33 +0900 Subject: [PATCH] mruby-bigint/bigint.c (mpz_mul_2exp): move mpz_clear() call. No need to call mpz_clear() after mpz_move(). --- mrbgems/mruby-bigint/core/bigint.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/mrbgems/mruby-bigint/core/bigint.c b/mrbgems/mruby-bigint/core/bigint.c index dd6dbd7d2..5964d0279 100644 --- a/mrbgems/mruby-bigint/core/bigint.c +++ b/mrbgems/mruby-bigint/core/bigint.c @@ -775,8 +775,8 @@ mpz_mul_2exp(mrb_state *mrb, mpz_t *z, mpz_t *x, mrb_int e) mpz_set(mrb, z, x); else { short sn = x->sn; - size_t digs = (e / DIG_SIZE); - size_t bs = (e % (DIG_SIZE)); + size_t digs = e / DIG_SIZE; + size_t bs = e % DIG_SIZE; mpz_t y; mpz_init(mrb, &y); @@ -785,12 +785,12 @@ mpz_mul_2exp(mrb_state *mrb, mpz_t *z, mpz_t *x, mrb_int e) y.p[i+digs] = x->p[i]; if (bs) { ulshift(mrb, z, &y, bs); + mpz_clear(mrb, &y); } else { mpz_move(mrb, z, &y); } z->sn = sn; - mpz_clear(mrb, &y); } } @@ -801,8 +801,8 @@ mpz_div_2exp(mrb_state *mrb, mpz_t *z, mpz_t *x, mrb_int e) if (e==0) mpz_set(mrb, z, x); else { - size_t digs = (e / DIG_SIZE); - size_t bs = (e % (DIG_SIZE)); + size_t digs = e / DIG_SIZE; + size_t bs = e % DIG_SIZE; mpz_t y; mpz_init(mrb, &y);