From 741e42e207f25f38e2d065fd9b92d25135220143 Mon Sep 17 00:00:00 2001 From: Sandro Santilli Date: Wed, 1 Oct 2014 14:07:12 +0000 Subject: [PATCH] Fix leaks in lwcurvepoly_segmentize and its tester git-svn-id: http://svn.osgeo.org/postgis/trunk@13023 b70326c6-7e19-0410-871a-916f4a2858ee --- liblwgeom/cunit/cu_force_sfs.c | 1 + liblwgeom/lwsegmentize.c | 10 +++++----- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/liblwgeom/cunit/cu_force_sfs.c b/liblwgeom/cunit/cu_force_sfs.c index 608b65b68..4815d0992 100644 --- a/liblwgeom/cunit/cu_force_sfs.c +++ b/liblwgeom/cunit/cu_force_sfs.c @@ -46,6 +46,7 @@ static void do_type_test(char * in, int type) in, lwtype_name(h->type), lwtype_name(type)); CU_ASSERT_EQUAL(h->type, type); lwgeom_free(h); + lwgeom_free(g); } diff --git a/liblwgeom/lwsegmentize.c b/liblwgeom/lwsegmentize.c index f5c32ebe4..a7eb66fb2 100644 --- a/liblwgeom/lwsegmentize.c +++ b/liblwgeom/lwsegmentize.c @@ -306,7 +306,7 @@ lwcurvepoly_segmentize(const LWCURVEPOLY *curvepoly, uint32_t perQuad) { line = lwcircstring_segmentize((LWCIRCSTRING *)tmp, perQuad); ptarray[i] = ptarray_clone_deep(line->points); - lwfree(line); + lwline_free(line); } else if (tmp->type == LINETYPE) { @@ -317,7 +317,7 @@ lwcurvepoly_segmentize(const LWCURVEPOLY *curvepoly, uint32_t perQuad) { line = lwcompound_segmentize((LWCOMPOUND *)tmp, perQuad); ptarray[i] = ptarray_clone_deep(line->points); - lwfree(line); + lwline_free(line); } else { @@ -774,7 +774,7 @@ lwpolygon_desegmentize(LWPOLY *poly) { for (i=0; inrings; i++) { - lwfree(geoms[i]); + lwfree(geoms[i]); /* TODO: should this be lwgeom_free instead ? */ } return lwgeom_clone((LWGEOM *)poly); } @@ -803,7 +803,7 @@ lwmline_desegmentize(LWMLINE *mline) { for (i=0; ingeoms; i++) { - lwfree(geoms[i]); + lwfree(geoms[i]); /* TODO: should this be lwgeom_free instead ? */ } return lwgeom_clone((LWGEOM *)mline); } @@ -831,7 +831,7 @@ lwmpolygon_desegmentize(LWMPOLY *mpoly) { for (i=0; ingeoms; i++) { - lwfree(geoms[i]); + lwfree(geoms[i]); /* TODO: should this be lwgeom_free instead ? */ } return lwgeom_clone((LWGEOM *)mpoly); } -- 2.40.0