mirror of
https://git.osgeo.org/gitea/postgis/postgis
synced 2024-10-24 09:02:37 +00:00
Stomp out memory leaks in CUnit tests
git-svn-id: http://svn.osgeo.org/postgis/trunk@10868 b70326c6-7e19-0410-871a-916f4a2858ee
This commit is contained in:
parent
c6bdfe74a9
commit
867cee8314
|
@ -193,6 +193,7 @@ static void test_raster_replace_band() {
|
|||
mem = rtalloc(datasize);
|
||||
band = rt_band_new_inline(width, height, PT_8BUI, 1, 1, mem);
|
||||
CU_ASSERT(band != NULL);
|
||||
rt_band_set_ownsdata_flag(band, 1);
|
||||
|
||||
rband = rt_raster_replace_band(raster, band, 0);
|
||||
CU_ASSERT(rband != NULL);
|
||||
|
|
|
@ -41,6 +41,7 @@ static void test_raster_convex_hull() {
|
|||
|
||||
CU_ASSERT_EQUAL(rt_raster_get_convex_hull(raster, &hull), ES_NONE);
|
||||
CU_ASSERT_EQUAL(hull->type, POINTTYPE);
|
||||
lwgeom_free(hull);
|
||||
cu_free_raster(raster);
|
||||
|
||||
/* width = 0 */
|
||||
|
@ -49,6 +50,7 @@ static void test_raster_convex_hull() {
|
|||
|
||||
CU_ASSERT_EQUAL(rt_raster_get_convex_hull(raster, &hull), ES_NONE);
|
||||
CU_ASSERT_EQUAL(hull->type, LINETYPE);
|
||||
lwgeom_free(hull);
|
||||
cu_free_raster(raster);
|
||||
|
||||
/* height = 0 */
|
||||
|
@ -57,6 +59,7 @@ static void test_raster_convex_hull() {
|
|||
|
||||
CU_ASSERT_EQUAL(rt_raster_get_convex_hull(raster, &hull), ES_NONE);
|
||||
CU_ASSERT_EQUAL(hull->type, LINETYPE);
|
||||
lwgeom_free(hull);
|
||||
cu_free_raster(raster);
|
||||
|
||||
/* normal raster */
|
||||
|
|
|
@ -85,11 +85,11 @@ static void test_raster_wkb() {
|
|||
serialized = rt_raster_serialize(raster);
|
||||
rast2 = rt_raster_deserialize(serialized, FALSE);
|
||||
|
||||
rt_raster_destroy(rast2);
|
||||
cu_free_raster(rast2);
|
||||
free(serialized);
|
||||
}
|
||||
|
||||
rt_raster_destroy(raster);
|
||||
cu_free_raster(raster);
|
||||
|
||||
/* ------------------------------------------------------ */
|
||||
/* No bands, 7x8 - big endian */
|
||||
|
@ -135,7 +135,7 @@ static void test_raster_wkb() {
|
|||
CU_ASSERT_STRING_EQUAL(hexwkb, out);
|
||||
*/
|
||||
|
||||
rt_raster_destroy(raster);
|
||||
cu_free_raster(raster);
|
||||
free((/*no const*/ void*)out);
|
||||
|
||||
/* ------------------------------------------------------ */
|
||||
|
@ -197,7 +197,7 @@ static void test_raster_wkb() {
|
|||
CU_ASSERT_STRING_EQUAL(hexwkb, out);
|
||||
*/
|
||||
|
||||
rt_raster_destroy(raster);
|
||||
cu_free_raster(raster);
|
||||
free((/*no const*/ void*)out);
|
||||
|
||||
/* ------------------------------------------------------ */
|
||||
|
@ -295,12 +295,12 @@ static void test_raster_wkb() {
|
|||
serialized = rt_raster_serialize(raster);
|
||||
rast2 = rt_raster_deserialize(serialized, FALSE);
|
||||
|
||||
rt_raster_destroy(rast2);
|
||||
cu_free_raster(rast2);
|
||||
free(serialized);
|
||||
|
||||
}
|
||||
|
||||
rt_raster_destroy(raster);
|
||||
cu_free_raster(raster);
|
||||
|
||||
/* ------------------------------------------------------ */
|
||||
/* 3x2, little endian, band0(16BSI) */
|
||||
|
@ -385,7 +385,7 @@ static void test_raster_wkb() {
|
|||
CU_ASSERT_STRING_EQUAL(hexwkb, out);
|
||||
*/
|
||||
|
||||
rt_raster_destroy(raster);
|
||||
cu_free_raster(raster);
|
||||
free((/*no const*/ void*)out);
|
||||
|
||||
/* ------------------------------------------------------ */
|
||||
|
@ -471,7 +471,7 @@ static void test_raster_wkb() {
|
|||
CU_ASSERT_STRING_EQUAL(hexwkb, out);
|
||||
*/
|
||||
|
||||
rt_raster_destroy(raster);
|
||||
cu_free_raster(raster);
|
||||
free((/*no const*/ void*)out);
|
||||
|
||||
/* ------------------------------------------------------ */
|
||||
|
@ -535,7 +535,7 @@ static void test_raster_wkb() {
|
|||
CU_ASSERT_STRING_EQUAL(hexwkb, out);
|
||||
*/
|
||||
|
||||
rt_raster_destroy(raster);
|
||||
cu_free_raster(raster);
|
||||
free((/*no const*/ void*)out);
|
||||
|
||||
/* ------------------------------------------------------ */
|
||||
|
@ -618,11 +618,11 @@ static void test_raster_wkb() {
|
|||
serialized = rt_raster_serialize(raster);
|
||||
rast2 = rt_raster_deserialize(serialized, FALSE);
|
||||
|
||||
rt_raster_destroy(rast2);
|
||||
cu_free_raster(rast2);
|
||||
free(serialized);
|
||||
}
|
||||
|
||||
rt_raster_destroy(raster);
|
||||
cu_free_raster(raster);
|
||||
|
||||
/* ------------------------------------------------------ */
|
||||
/* 5x5, little endian, 3 x band 8BUI (RGB), */
|
||||
|
@ -786,10 +786,10 @@ static void test_raster_wkb() {
|
|||
serialized = rt_raster_serialize(raster);
|
||||
rast2 = rt_raster_deserialize(serialized, FALSE);
|
||||
|
||||
rt_raster_destroy(rast2);
|
||||
cu_free_raster(rast2);
|
||||
free(serialized);
|
||||
}
|
||||
rt_raster_destroy(raster);
|
||||
cu_free_raster(raster);
|
||||
|
||||
} /* for-loop running car5 tests */
|
||||
|
||||
|
|
|
@ -204,10 +204,6 @@ void cu_free_raster(rt_raster raster) {
|
|||
|
||||
for (i = 0; i < nbands; ++i) {
|
||||
rt_band band = rt_raster_get_band(raster, i);
|
||||
if (!rt_band_is_offline(band) && !rt_band_get_ownsdata_flag(band)) {
|
||||
void* mem = rt_band_get_data(band);
|
||||
if (mem) rtdealloc(mem);
|
||||
}
|
||||
rt_band_destroy(band);
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue