From 6491c55d0a581e67abea9c924e34e3eb669c374f Mon Sep 17 00:00:00 2001 From: ewt Date: Mon, 21 Oct 1996 01:22:47 +0000 Subject: [PATCH] 1) use freeHeader(), not free() after writeheader() 2) free iterators in copyHeader() 3) free string arrays after interation CVS patchset: 1119 CVS date: 1996/10/21 01:22:47 --- lib/header.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/lib/header.c b/lib/header.c index b81e9a3..882c5e1 100644 --- a/lib/header.c +++ b/lib/header.c @@ -159,9 +159,14 @@ Header copyHeader(Header h) /* The result here is that the data is also sorted */ while (nextIterator(headerIter, &tag, &type, &ptr, &count)) { addEntry(res, tag, type, ptr, count); + + if (type == STRING_ARRAY_TYPE) free(ptr); } res->fully_sorted = 1; + + freeIterator(headerIter); + return res; } @@ -223,7 +228,7 @@ void writeHeader(int fd, Header h, int magicp) write(fd, converted_data, h->data_used); free(converted_data); - free(h); + freeHeader(h); } static void *dataHostToNetwork(Header h) -- 2.7.4