[Gdal-dev] GDALWarpOptions padfSrcNoDataImag
Frank Warmerdam
warmerdam at pobox.com
Wed May 2 18:21:08 EDT 2007
Craig Miller wrote:
> I'm getting an exception in GDALWarpOperation when I initialize with my warp
> options. The exception is getting thrown when Initialize verifies that
> padfSrcNoDataImag[0] isn't 0 since padfSrcNoDataImag is NULL. I can of
> course tweak gdal to check for a NULL pointer instead of looking for 0 in
> the 0 index, but without digging further I'm not 100% that is ok. I've
> processed several hundred files with my code the way it is, and it is only
> this new image that is giving me fits so I thought I'd first try and
> determine what the padfSrcNoDataImag option is. With a cursory look at the
> docs I haven't been able to find a description of how/why this gets set.
> Any suggestions?
Craig,
I don't know why this would only affect one image out of many similar ones.
But I do think this code in Initialize() should not assume padfSrcNoDataImag
is non-NULL just because padfSrcNoDataReal is non-NULL
if( hSrcBand != NULL
&& psOptions->padfSrcNoDataReal != NULL )
{
int bMergeSource = FALSE;
if( psOptions->padfSrcNoDataImag[iBand] != 0.0
&& !GDALDataTypeIsComplex( psOptions->eWorkingDataType ) )
bMergeSource = TRUE;
Could you file a bug on this, and I'll fix it in trunk and 1.4 branch. I
think the fix would be to change:
if( psOptions->padfSrcNoDataImag[iBand] != 0.0
&& !GDALDataTypeIsComplex( psOptions->eWorkingDataType ) )
bMergeSource = TRUE;
to:
if( psOptions->padfSrcNoDataImag != NULL
&& psOptions->padfSrcNoDataImag[iBand] != 0.0
&& !GDALDataTypeIsComplex( psOptions->eWorkingDataType ) )
bMergeSource = TRUE;
Best regards,
--
---------------------------------------+--------------------------------------
I set the clouds in motion - turn up | Frank Warmerdam, warmerdam at pobox.com
light and sound - activate the windows | http://pobox.com/~warmerdam
and watch the world go round - Rush | President OSGeo, http://osgeo.org
More information about the Gdal-dev
mailing list