]> granicus.if.org Git - postgis/commitdiff
Explicitly set GDALWarpOptions element padfSrcNoDataImag as it seems some folks are...
authorBborie Park <bkpark at ucdavis.edu>
Fri, 10 Jun 2011 18:14:51 +0000 (18:14 +0000)
committerBborie Park <bkpark at ucdavis.edu>
Fri, 10 Jun 2011 18:14:51 +0000 (18:14 +0000)
Associated tickets are #925 and #1015.

git-svn-id: http://svn.osgeo.org/postgis/trunk@7364 b70326c6-7e19-0410-871a-916f4a2858ee

raster/rt_core/rt_api.c

index dccedbebef59f9b058d171ca54d81cab53569791..81ebeb06839958cee434b26a016f1a2fc5fd4c9f 100644 (file)
@@ -5940,7 +5940,9 @@ rt_raster_transform(rt_raster raster, char *src_srs, char *dst_srs,
        numBands = rt_raster_get_num_bands(raster);
        wopts = GDALCreateWarpOptions();
        wopts->padfSrcNoDataReal = (double *) CPLMalloc(numBands * sizeof(double));
+       wopts->padfSrcNoDataImag = (double *) CPLMalloc(numBands * sizeof(double));
        wopts->padfDstNoDataReal = (double *) CPLMalloc(numBands * sizeof(double));
+       wopts->padfDstNoDataImag = (double *) CPLMalloc(numBands * sizeof(double));
        if (NULL == wopts->padfSrcNoDataReal || NULL == wopts->padfDstNoDataReal) {
                rterror("rt_raster_transform: Out of memory allocating nodata mapping\n");
                GDALDestroyWarpOptions(wopts);
@@ -5964,7 +5966,6 @@ rt_raster_transform(rt_raster raster, char *src_srs, char *dst_srs,
                                the problem is that there is a chance that this number is a legitamate value
                        */
                        wopts->padfSrcNoDataReal[i] = -123456.789;
-                       ;
                }
                else {
                        hasnodata = 1;
@@ -5973,6 +5974,7 @@ rt_raster_transform(rt_raster raster, char *src_srs, char *dst_srs,
                }
 
                wopts->padfDstNoDataReal[i] = wopts->padfSrcNoDataReal[i];
+               wopts->padfDstNoDataImag[i] = wopts->padfSrcNoDataImag[i] = 0.0;
        }
        if (!hasnodata) {
                RASTER_DEBUG(3, "No nodata mapping found");