diff options
author | Arnold D. Robbins <arnold@skeeve.com> | 2014-07-31 19:50:06 +0300 |
---|---|---|
committer | Arnold D. Robbins <arnold@skeeve.com> | 2014-07-31 19:50:06 +0300 |
commit | 54146e27c8fd7756a944d0e168aa969624567b55 (patch) | |
tree | 2fab7e830201164a2d152b7b149c093b5be5e0e4 | |
parent | e3f18c6702e67aabd90edea58a4edcc5d0495fdf (diff) | |
download | egawk-54146e27c8fd7756a944d0e168aa969624567b55.tar.gz egawk-54146e27c8fd7756a944d0e168aa969624567b55.tar.bz2 egawk-54146e27c8fd7756a944d0e168aa969624567b55.zip |
Fix memory leak in do_mpfr_div.
-rw-r--r-- | ChangeLog | 6 | ||||
-rw-r--r-- | mpfr.c | 2 |
2 files changed, 8 insertions, 0 deletions
@@ -9,6 +9,12 @@ * awk.h (cleanup_mpfr): Add declaration. * main.c (main): Add call to `cleanup_mpfr'. + Fix memory leak: + + * mpfr.c (do_mpfr_div): Add unref to denominator and numerator + to not leak memory. Thanks to Katie Wasserman <katie@wass.net> + for isolating the problem to that routine. + 2014-07-25 Arnold D. Robbins <arnold@skeeve.com> * main.c (main): Add a warning message if -M is used and gawk was @@ -1248,6 +1248,8 @@ do_mpfr_div(int nargs) mpz_tdiv_qr(quotient->mpg_i, remainder->mpg_i, num->mpg_i, denom->mpg_i); unref(num); unref(denom); + unref(numerator); + unref(denominator); sub = make_string("quotient", 8); lhs = assoc_lookup(result, sub); |