]> granicus.if.org Git - postgis/commitdiff
Remove memory leak
authorPaul Ramsey <pramsey@cleverelephant.ca>
Mon, 29 Jun 2015 16:56:33 +0000 (16:56 +0000)
committerPaul Ramsey <pramsey@cleverelephant.ca>
Mon, 29 Jun 2015 16:56:33 +0000 (16:56 +0000)
git-svn-id: http://svn.osgeo.org/postgis/trunk@13743 b70326c6-7e19-0410-871a-916f4a2858ee

liblwgeom/cunit/cu_algorithm.c

index 74f770ca070acecc41e7069c0aa6ff683b1da349..19996f2f0ccd894a4a728bd9c0098162a9c5bbd6 100644 (file)
@@ -901,43 +901,56 @@ static void test_geohash_point_as_int(void)
 static void test_lwgeom_simplify(void)
 {
                LWGEOM *l;
+               LWGEOM *g;
                char *ewkt;
 
                /* Simplify but only so far... */
-               l = lwgeom_simplify(lwgeom_from_wkt("LINESTRING(0 0, 1 0, 1 1, 0 1, 0 0)", LW_PARSER_CHECK_NONE), 10, LW_TRUE);
+               g = lwgeom_from_wkt("LINESTRING(0 0, 1 0, 1 1, 0 1, 0 0)", LW_PARSER_CHECK_NONE);
+               l = lwgeom_simplify(g, 10, LW_TRUE);
                ewkt = lwgeom_to_ewkt(l);
                CU_ASSERT_STRING_EQUAL(ewkt, "LINESTRING(0 0,0 0)");
+               lwgeom_free(g);
                lwgeom_free(l);
                lwfree(ewkt);
 
                /* Simplify but only so far... */
-               l = lwgeom_simplify(lwgeom_from_wkt("POLYGON((0 0, 1 0, 1 1, 0 1, 0 0))", LW_PARSER_CHECK_NONE), 10, LW_TRUE);
+               g = lwgeom_from_wkt("POLYGON((0 0, 1 0, 1 1, 0 1, 0 0))", LW_PARSER_CHECK_NONE);
+               l = lwgeom_simplify(g, 10, LW_TRUE);
                ewkt = lwgeom_to_ewkt(l);
                CU_ASSERT_STRING_EQUAL(ewkt, "POLYGON((0 0,1 0,1 1,0 0))");
+               lwgeom_free(g);
                lwgeom_free(l);
                lwfree(ewkt);
 
                /* Simplify and collapse */
-               l = lwgeom_simplify(lwgeom_from_wkt("LINESTRING(0 0, 1 0, 1 1, 0 1, 0 0)", LW_PARSER_CHECK_NONE), 10, LW_FALSE);
+               g = lwgeom_from_wkt("LINESTRING(0 0, 1 0, 1 1, 0 1, 0 0)", LW_PARSER_CHECK_NONE);
+               l = lwgeom_simplify(g, 10, LW_FALSE);
                CU_ASSERT_EQUAL(l, NULL);
+               lwgeom_free(g);
                lwgeom_free(l);
 
                /* Simplify and collapse */
-               l = lwgeom_simplify(lwgeom_from_wkt("POLYGON((0 0, 1 0, 1 1, 0 1, 0 0))", LW_PARSER_CHECK_NONE), 10, LW_FALSE);
+               g = lwgeom_from_wkt("POLYGON((0 0, 1 0, 1 1, 0 1, 0 0))", LW_PARSER_CHECK_NONE);
+               l = lwgeom_simplify(g, 10, LW_FALSE);
                CU_ASSERT_EQUAL(l, NULL);
+               lwgeom_free(g);
                lwgeom_free(l);
                
                /* Not simplifiable */
-               l = lwgeom_simplify(lwgeom_from_wkt("LINESTRING(0 0, 50 1.00001, 100 0)", LW_PARSER_CHECK_NONE), 1.0, LW_FALSE);
+               g = lwgeom_from_wkt("LINESTRING(0 0, 50 1.00001, 100 0)", LW_PARSER_CHECK_NONE);
+               l = lwgeom_simplify(g, 1.0, LW_FALSE);
                ewkt = lwgeom_to_ewkt(l);
                CU_ASSERT_STRING_EQUAL(ewkt, "LINESTRING(0 0,50 1.00001,100 0)");
+               lwgeom_free(g);
                lwgeom_free(l);
                lwfree(ewkt);
 
                /* Simplifiable */
-               l = lwgeom_simplify(lwgeom_from_wkt("LINESTRING(0 0,50 0.99999,100 0)", LW_PARSER_CHECK_NONE), 1.0, LW_FALSE);
+               g = lwgeom_from_wkt("LINESTRING(0 0,50 0.99999,100 0)", LW_PARSER_CHECK_NONE);
+               l = lwgeom_simplify(g, 1.0, LW_FALSE);
                ewkt = lwgeom_to_ewkt(l);
                CU_ASSERT_STRING_EQUAL(ewkt, "LINESTRING(0 0,100 0)");
+               lwgeom_free(g);
                lwgeom_free(l);
                lwfree(ewkt);
 }