From: erg Date: Wed, 2 Aug 2006 20:36:39 +0000 (+0000) Subject: Fix user reported memory leak in record_free X-Git-Tag: LAST_LIBGRAPH~32^2~6009 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=4eb827fa2fa5e7b0949f4eef108a5e662909ccae;p=graphviz Fix user reported memory leak in record_free --- diff --git a/lib/common/shapes.c b/lib/common/shapes.c index 04a158faa..744ed3bfe 100644 --- a/lib/common/shapes.c +++ b/lib/common/shapes.c @@ -1706,11 +1706,25 @@ static void record_init(node_t * n) ND_shape_info(n) = (void *) info; } +static void free_field (field_t* f) +{ + int i; + + for (i=0; in_flds; i++ ) { + free_field(f->fld[i]); + } + + free(f->id); + free_label(f->lp); + free(f->fld); + free(f); +} + static void record_free(node_t * n) { field_t *p = ND_shape_info(n); - free(p); + free_field (p); } static field_t *map_rec_port(field_t * f, char *str)