From 63a31bee666a9bf9e37eda447f7742b07917dc74 Mon Sep 17 00:00:00 2001
From: "Arnold D. Robbins" <arnold@skeeve.com>
Date: Mon, 14 Jan 2019 20:33:32 +0200
Subject: [PATCH 228/289] Fix small potential memory leak for intdiv.

---
 ChangeLog | 6 ++++++
 builtin.c | 4 +++-
 mpfr.c    | 4 +++-
 3 files changed, 12 insertions(+), 2 deletions(-)

diff --git a/builtin.c b/builtin.c
index f2d31059..3d57234b 100644
--- a/builtin.c
+++ b/builtin.c
@@ -3,7 +3,7 @@
  */
 
 /*
- * Copyright (C) 1986, 1988, 1989, 1991-2018 the Free Software Foundation, Inc.
+ * Copyright (C) 1986, 1988, 1989, 1991-2019 the Free Software Foundation, Inc.
  *
  * This file is part of GAWK, the GNU implementation of the
  * AWK Programming Language.
@@ -4048,11 +4048,13 @@ do_intdiv(int nargs)
 	lhs = assoc_lookup(result, sub);
 	unref(*lhs);
 	*lhs = make_number((AWKNUM) quotient);
+	unref(sub);
 
 	sub = make_string("remainder", 9);
 	lhs = assoc_lookup(result, sub);
 	unref(*lhs);
 	*lhs = make_number((AWKNUM) remainder);
+	unref(sub);
 
 	DEREF(denominator);
 	DEREF(numerator);
diff --git a/mpfr.c b/mpfr.c
index 8478570f..c3ba2a6a 100644
--- a/mpfr.c
+++ b/mpfr.c
@@ -3,7 +3,7 @@
  */
 
 /*
- * Copyright (C) 2012, 2013, 2015, 2017, 2018,
+ * Copyright (C) 2012, 2013, 2015, 2017, 2018, 2019,
  * the Free Software Foundation, Inc.
  *
  * This file is part of GAWK, the GNU implementation of the
@@ -1265,11 +1265,13 @@ do_mpfr_intdiv(int nargs)
 	lhs = assoc_lookup(result, sub);
 	unref(*lhs);
 	*lhs = quotient;
+	unref(sub);
 
 	sub = make_string("remainder", 9);
 	lhs = assoc_lookup(result, sub);
 	unref(*lhs);
 	*lhs = remainder;
+	unref(sub);
 
 	return make_number((AWKNUM) 0.0);
 }
-- 
2.19.1

