瀏覽代碼

r.in.gdal: Starting with GDAL 2.0, vector drivers can also be returned (fix -f flag)

git-svn-id: https://svn.osgeo.org/grass/grass/trunk@60479 15284696-431f-4ddb-bdfa-cd5b030d7da7
Martin Landa 11 年之前
父節點
當前提交
a2025513b0
共有 1 個文件被更改,包括 7 次插入0 次删除
  1. 7 0
      raster/r.in.gdal/main.c

+ 7 - 0
raster/r.in.gdal/main.c

@@ -221,6 +221,13 @@ int main(int argc, char *argv[])
 	    GDALDriverH hDriver = GDALGetDriver(iDr);
 	    GDALDriverH hDriver = GDALGetDriver(iDr);
 	    const char *pszRWFlag;
 	    const char *pszRWFlag;
 
 
+#ifdef GDAL_DCAP_RASTER
+            /* Starting with GDAL 2.0, vector drivers can also be returned */
+            /* Only keep raster drivers */
+            if (!GDALGetMetadataItem(hDriver, GDAL_DCAP_RASTER, NULL))
+                continue;
+#endif
+
 	    if (GDALGetMetadataItem(hDriver, GDAL_DCAP_CREATE, NULL))
 	    if (GDALGetMetadataItem(hDriver, GDAL_DCAP_CREATE, NULL))
 		pszRWFlag = "rw+";
 		pszRWFlag = "rw+";
 	    else if (GDALGetMetadataItem(hDriver, GDAL_DCAP_CREATECOPY, NULL))
 	    else if (GDALGetMetadataItem(hDriver, GDAL_DCAP_CREATECOPY, NULL))