GDAL/OGR 2.4.1 Release Notes

The 2.4.1 release is a bug fix release.



  • Fix build with OpenBSD which doesn't support RLIMIT_AS (#1163)
  • fix build --without-lerc (#1224)
  • configure: fix netcdf_mem.h detection in netcdf 4.6.2 (#1328)


  • Fix build issue for builds without curl (#1251)
  • nmake.opt: remove unicode character at line starting with '# 4275' that apparently cause build issues with some MSVC versions (#1169)


  • Poppler: revision version management. Drop support for ancient versions older than 0.23.0
  • Add support for Poppler 0.72.0 and 0.73.0 (#1207, #1208)


  • cpl_vsi.h: fix include for C use
  • VSICurlHandle::ReadMultiRange(): use default implementation if there is a single range. May help to improve performance for #1206
  • VSIGZipWriteHandleMT: avoid potential deadlock in case of error
  • /vsihdfs/: fix Read() when more than one hdfsRead call is needed (#1349)

GDAL utilities

  • gdalwarp -crop_to_cutline: do not round computed target extent to be aligned on the grid of the source raster if -tr is set (restore partially pre 2.4 behaviour) (#1173)
  • gdalwarp: assume -tap when using -crop_to_cutline, -tr and -wo CUTLINE_ALL_TOUCHED=TRUE, so as to avoid issues with polygons smaller than 1x1 pixels (#1360)
  • gdal2tiles: give local tile layer and basemap layers same min/max zoom levels as generated tile cache (#1074)
  • gdal2tiles: fix breakage of openlayers.html getURL() javascript function, introduced in GDAL 2.3.3 / 2.4.0 (#1127)
  • gdal2tiles: prevent accidental copy of full GeoTIFF into temporary .vrt file
  • Fix double-free in StripIrrelevantOptions() (triggered by gdalinfo / ogrinfo --format)
  • use nodata value from origin dataset

GDAL algorithms

  • rasterize: fix crash when working buffer is larger than 2GB (#1338)

GDAL drivers

COSAR driver:

  • avoid out-of-bound write on corrupted dataset. Fixes OSS Fuzz #12360

GTiff driver:

KMLSuperOverlay driver:

JPEG driver:

  • fix GDAL 2.3.0 performance regression when decoding JPEG (or GPKG using JPEG) images (#1324)

netCDF driver:

  • fix crash when opening a dataset with an attribute of length 0 (#1303)

PDSv3 driver:

  • fix decoding of band interleaved images (such as for CRISM HSP) (#1239)

XPM driver:

  • fix read heap buffer overflow on corrupted image. Fixes OSS Fuzz #13455

OGR core

  • Polyhedral surface: fix importFromWKT to properly fix Z/M flag
  • OGRGeometryFactory::GetCurveParmeters(): fix assertion when coordinates are very near 0 (relates to OSS Fuzz #13408)
  • OGRLineString::segmentize(): fix issues when segment length is divisible by maxlength (#1341)


  • Coordinate transformation: do not apply +towgs84 if it is present only in one one of the CRS, when using PROJ >= 5 (#1156)

OGR drivers

CSW driver:

  • fix crash when geometry parsing fails (#1248)

DXF driver:

  • fix double-free issue in case of writing error. Fixes OSS Fuzz #13516

Elasticsearch driver:

  • Fix index comparison bug when a index have at least one mapping

GeoJSON driver:

GeoPackage driver:

  • allow srs_id with negative values

GML driver:

  • write SRSName element in .gfs when parsing a GML file with srsName only on top-level boundedBy element (#1210)
  • Add "FeatureType" to list of suffixes recognized by XSD parser for compatibility with schemas produced by ArcGIS Server
  • Fix assertion in CPLGetValueType when testing non-ASCII chars

MITAB driver:

  • .tab: fix deleting a feature without geometry (#1232)
  • adapt dynamically default projection bounds to false_easting/false_northing values (#1316)
  • avoid potential assertion or stack buffer overflow on corrupted .ind files. Fixes OSS Fuzz #11999.
  • prevent potential infinite recursion on broken indexes. Fixes OSS Fuzz #12739.

MSSQLSpatial driver:

  • Add option to expose the FID column as a feature attribute (#1227)

ODS driver:

  • allow opening tables with empty cells with huge values of columns-repeated attribute at end of line (#1243)
  • aavoid potential null pointer dereference when writing to corrupted filename. Fixes OSS Fuz #12976.

PDF driver:

  • avoid division by zero when generating from vector content whose bounding box is almost a horizontal or vertical line. Fixes OSS Fuzz #13408

PGDump driver:

  • emit correct SQL statement when UNLOGGED=ON

Selafin driver:

  • avoid null pointer dereference on corrupted files. Fixes OSS Fuzz #12356

VFK driver:

  • fix regression where curved geometries were ignored (#1351)

Python bindings

Last modified 4 years ago Last modified on Mar 15, 2019, 5:44:29 AM
Note: See TracWiki for help on using the wiki.