From: Bborie Park Date: Sun, 25 May 2014 19:51:01 +0000 (+0000) Subject: basic support for GDAL 2.0 X-Git-Tag: 2.2.0rc1~1094 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=6042e16a83b247dc69dda54e66240fca820e7fa6;p=postgis basic support for GDAL 2.0 git-svn-id: http://svn.osgeo.org/postgis/trunk@12584 b70326c6-7e19-0410-871a-916f4a2858ee --- diff --git a/raster/rt_core/rt_geometry.c b/raster/rt_core/rt_geometry.c index 6e18be821..45e23fe89 100644 --- a/raster/rt_core/rt_geometry.c +++ b/raster/rt_core/rt_geometry.c @@ -910,7 +910,12 @@ rt_raster_gdal_polygonize( /***************************** * Register ogr mem driver *****************************/ +#ifdef GDAL_DCAP_RASTER + /* in GDAL 2.0, OGRRegisterAll() is an alias to GDALAllRegister() */ + rt_util_gdal_register_all(0); +#else OGRRegisterAll(); +#endif RASTER_DEBUG(3, "creating OGR MEM vector"); diff --git a/raster/rt_core/rt_raster.c b/raster/rt_core/rt_raster.c index 371a4c2e4..cbb0ff9d3 100644 --- a/raster/rt_core/rt_raster.c +++ b/raster/rt_core/rt_raster.c @@ -1728,6 +1728,14 @@ rt_raster_gdal_drivers(uint32_t *drv_count, uint8_t cancc) { for (i = 0, j = 0; i < count; i++) { drv = GDALGetDriver(i); +#ifdef GDAL_DCAP_RASTER + /* Starting with GDAL 2.0, vector drivers can also be returned */ + /* Only keep raster drivers */ + state = GDALGetMetadataItem(drv, GDAL_DCAP_RASTER, NULL); + if (state == NULL || !EQUAL(state, "YES")) + continue; +#endif + if (cancc) { /* CreateCopy support */ state = GDALGetMetadataItem(drv, GDAL_DCAP_CREATECOPY, NULL);