summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--missing/dtoa.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/missing/dtoa.c b/missing/dtoa.c
index cbd6e6ebae..ba8cd46ebd 100644
--- a/missing/dtoa.c
+++ b/missing/dtoa.c
@@ -547,10 +547,13 @@ Balloc(int k)
}
static void
-Bfree(Bigint *v)
+Bclear(Bigint **vp)
{
- FREE(v);
+ Bigint *v = *vp;
+ *vp = NULL;
+ if (v) FREE(v);
}
+#define Bfree(v) Bclear(&(v))
#define Bcopy(x,y) memcpy((char *)&(x)->sign, (char *)&(y)->sign, \
(y)->wds*sizeof(Long) + 2*sizeof(int))