mirror of
https://git.osgeo.org/gitea/postgis/postgis
synced 2024-10-24 00:52:40 +00:00
Removed all remaining memory leaks from testapi.c
git-svn-id: http://svn.osgeo.org/postgis/trunk@8130 b70326c6-7e19-0410-871a-916f4a2858ee
This commit is contained in:
parent
ee0f16bd37
commit
8a5872696a
|
@ -154,8 +154,6 @@ fillRasterToPolygonize(int hasnodata, double nodatavalue)
|
|||
rt_band_set_pixel(band, 4, 4, 254);
|
||||
*/
|
||||
|
||||
rt_raster_add_band(raster, band, 100);
|
||||
|
||||
return raster;
|
||||
}
|
||||
|
||||
|
@ -2225,6 +2223,7 @@ static void testFromTwoRasters() {
|
|||
int
|
||||
main()
|
||||
{
|
||||
int i;
|
||||
rt_raster raster;
|
||||
rt_band band_1BB, band_2BUI, band_4BUI,
|
||||
band_8BSI, band_8BUI, band_16BSI, band_16BUI,
|
||||
|
@ -2364,14 +2363,13 @@ main()
|
|||
rt_raster rt = fillRasterToPolygonize(1, -1.0);
|
||||
|
||||
/* We can check rt_raster_has_no_band here too */
|
||||
CHECK(!rt_raster_has_no_band(rt, 1));
|
||||
CHECK(!rt_raster_has_no_band(rt, 0));
|
||||
|
||||
int nPols = 0;
|
||||
|
||||
rt_geomval gv = (rt_geomval) rt_raster_dump_as_wktpolygons(rt, 1, &nPols);
|
||||
rt_geomval gv = (rt_geomval) rt_raster_dump_as_wktpolygons(rt, 0, &nPols);
|
||||
|
||||
/*
|
||||
int i;
|
||||
for (i = 0; i < nPols; i++) {
|
||||
printf("(i, val, geom) = (%d, %f, %s)\n", i, gv[i].val, gv[i].geom);
|
||||
}
|
||||
|
@ -2401,7 +2399,9 @@ main()
|
|||
CHECK(!strcmp(gv[3].geom, "POLYGON ((0 0,0 9,9 9,9 0,0 0),(6 7,6 8,3 8,3 7,2 7,2 6,1 6,1 3,2 3,2 2,3 2,3 1,6 1,6 2,7 2,7 3,8 3,8 6,7 6,7 7,6 7))"));
|
||||
|
||||
|
||||
rt_raster_destroy(rt);
|
||||
for (i = 0; i < nPols; i++) rtdealloc(gv[i].geom);
|
||||
rtdealloc(gv);
|
||||
deepRelease(rt);
|
||||
|
||||
|
||||
/* Second test: NODATA value = 1.8 */
|
||||
|
@ -2413,11 +2413,11 @@ main()
|
|||
|
||||
|
||||
/* We can check rt_raster_has_no_band here too */
|
||||
CHECK(!rt_raster_has_no_band(rt, 1));
|
||||
CHECK(!rt_raster_has_no_band(rt, 0));
|
||||
|
||||
nPols = 0;
|
||||
|
||||
gv = (rt_geomval) rt_raster_dump_as_wktpolygons(rt, 1, &nPols);
|
||||
gv = (rt_geomval) rt_raster_dump_as_wktpolygons(rt, 0, &nPols);
|
||||
|
||||
/*
|
||||
for (i = 0; i < nPols; i++) {
|
||||
|
@ -2445,7 +2445,9 @@ main()
|
|||
CHECK(!strcmp(gv[2].geom, "POLYGON ((0 0,0 9,9 9,9 0,0 0),(6 7,6 8,3 8,3 7,2 7,2 6,1 6,1 3,2 3,2 2,3 2,3 1,6 1,6 2,7 2,7 3,8 3,8 6,7 6,7 7,6 7))"));
|
||||
#endif
|
||||
|
||||
rt_raster_destroy(rt);
|
||||
for (i = 0; i < nPols; i++) rtdealloc(gv[i].geom);
|
||||
rtdealloc(gv);
|
||||
deepRelease(rt);
|
||||
|
||||
/* Third test: NODATA value = 2.8 */
|
||||
#if GDALFPOLYGONIZE == 1
|
||||
|
@ -2455,11 +2457,11 @@ main()
|
|||
#endif
|
||||
|
||||
/* We can check rt_raster_has_no_band here too */
|
||||
CHECK(!rt_raster_has_no_band(rt, 1));
|
||||
CHECK(!rt_raster_has_no_band(rt, 0));
|
||||
|
||||
nPols = 0;
|
||||
|
||||
gv = (rt_geomval) rt_raster_dump_as_wktpolygons(rt, 1, &nPols);
|
||||
gv = (rt_geomval) rt_raster_dump_as_wktpolygons(rt, 0, &nPols);
|
||||
|
||||
/*
|
||||
for (i = 0; i < nPols; i++) {
|
||||
|
@ -2472,13 +2474,11 @@ main()
|
|||
|
||||
CHECK_EQUALS_DOUBLE(gv[3].val, 0.0);
|
||||
CHECK(!strcmp(gv[3].geom, "POLYGON ((0 0,0 9,9 9,9 0,0 0),(6 7,6 8,3 8,3 7,2 7,2 6,1 6,1 3,2 3,2 2,3 2,3 1,6 1,6 2,7 2,7 3,8 3,8 6,7 6,7 7,6 7))"));
|
||||
rt_raster_destroy(rt);
|
||||
#else
|
||||
CHECK(FLT_EQ(gv[0].val, 2.0));
|
||||
|
||||
CHECK_EQUALS_DOUBLE(gv[2].val, 0.0);
|
||||
CHECK(!strcmp(gv[2].geom, "POLYGON ((0 0,0 9,9 9,9 0,0 0),(6 7,6 8,3 8,3 7,2 7,2 6,1 6,1 3,2 3,2 2,3 2,3 1,6 1,6 2,7 2,7 3,8 3,8 6,7 6,7 7,6 7))"));
|
||||
rt_raster_destroy(rt);
|
||||
#endif
|
||||
|
||||
CHECK(!strcmp(gv[0].geom, "POLYGON ((3 1,3 2,2 2,2 3,1 3,1 6,2 6,2 7,3 7,3 8,5 8,5 6,3 6,3 3,4 3,5 3,5 1,3 1))"));
|
||||
|
@ -2486,15 +2486,19 @@ main()
|
|||
CHECK_EQUALS_DOUBLE(gv[1].val, 0.0);
|
||||
CHECK(!strcmp(gv[1].geom, "POLYGON ((3 3,3 6,6 6,6 3,3 3))"));
|
||||
|
||||
for (i = 0; i < nPols; i++) rtdealloc(gv[i].geom);
|
||||
rtdealloc(gv);
|
||||
deepRelease(rt);
|
||||
|
||||
/* Fourth test: NODATA value = 0 */
|
||||
rt = fillRasterToPolygonize(1, 0.0);
|
||||
|
||||
/* We can check rt_raster_has_no_band here too */
|
||||
CHECK(!rt_raster_has_no_band(rt, 1));
|
||||
CHECK(!rt_raster_has_no_band(rt, 0));
|
||||
|
||||
nPols = 0;
|
||||
|
||||
gv = (rt_geomval) rt_raster_dump_as_wktpolygons(rt, 1, &nPols);
|
||||
gv = (rt_geomval) rt_raster_dump_as_wktpolygons(rt, 0, &nPols);
|
||||
|
||||
/*
|
||||
for (i = 0; i < nPols; i++) {
|
||||
|
@ -2518,17 +2522,19 @@ main()
|
|||
|
||||
CHECK(!strcmp(gv[1].geom, "POLYGON ((5 1,5 3,6 3,6 6,5 6,5 8,6 8,6 7,7 7,7 6,8 6,8 3,7 3,7 2,6 2,6 1,5 1))"));
|
||||
|
||||
rt_raster_destroy(rt);
|
||||
for (i = 0; i < nPols; i++) rtdealloc(gv[i].geom);
|
||||
rtdealloc(gv);
|
||||
deepRelease(rt);
|
||||
|
||||
/* Last test: There is no NODATA value (all values are valid) */
|
||||
rt = fillRasterToPolygonize(0, 0.0);
|
||||
|
||||
/* We can check rt_raster_has_no_band here too */
|
||||
CHECK(!rt_raster_has_no_band(rt, 1));
|
||||
CHECK(!rt_raster_has_no_band(rt, 0));
|
||||
|
||||
nPols = 0;
|
||||
|
||||
gv = (rt_geomval) rt_raster_dump_as_wktpolygons(rt, 1, &nPols);
|
||||
gv = (rt_geomval) rt_raster_dump_as_wktpolygons(rt, 0, &nPols);
|
||||
|
||||
/*
|
||||
for (i = 0; i < nPols; i++) {
|
||||
|
@ -2557,7 +2563,10 @@ main()
|
|||
|
||||
CHECK_EQUALS_DOUBLE(gv[3].val, 0.0);
|
||||
CHECK(!strcmp(gv[3].geom, "POLYGON ((0 0,0 9,9 9,9 0,0 0),(6 7,6 8,3 8,3 7,2 7,2 6,1 6,1 3,2 3,2 2,3 2,3 1,6 1,6 2,7 2,7 3,8 3,8 6,7 6,7 7,6 7))"));
|
||||
rt_raster_destroy(rt);
|
||||
|
||||
for (i = 0; i < nPols; i++) rtdealloc(gv[i].geom);
|
||||
rtdealloc(gv);
|
||||
deepRelease(rt);
|
||||
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue