| 1 | = GDAL/OGR 2.2.4 Release Notes = |
| 2 | |
| 3 | The 2.2.4 release is a bug fix release. |
| 4 | |
| 5 | == Build == |
| 6 | |
| 7 | * configure: add support for ECW SDK 5.4, by detecting if we must link against the newabi or oldabi link |
| 8 | |
| 9 | == Port == |
| 10 | |
| 11 | * CPLSetErrorHandler(): avoid later crashes when passing a null callback (https://github.com/OSGeo/gdal/pull/298) |
| 12 | |
| 13 | == GDAL utilities == |
| 14 | |
| 15 | * gdalinfo: make sure to display geodetic coordinates always in degree (and not potentially in another unit such as grad) (#4198) |
| 16 | * gdalinfo / VRT: fix crash with implicit overviews on per-dataset mask band (https://github.com/mapbox/rasterio/issues/1266#issuecomment-367233149) |
| 17 | * gdalwarp: fix when several input datasets with different SRS are specified, and no explicit target SRS is provided (#7170) |
| 18 | * gdal_rasterize: fix crash in some situations with ALL_TOUCHED option (#7176) |
| 19 | |
| 20 | == GDAL algorithms == |
| 21 | |
| 22 | * Warping: use panSrcBands[0] in the single band case (regression fix, https://github.com/OSGeo/gdal/pull/295) |
| 23 | |
| 24 | == GDAL drivers == |
| 25 | |
| 26 | AirSAR driver: |
| 27 | * fix computation of imaginary part in C23 case (#7222) |
| 28 | |
| 29 | EHdr driver: |
| 30 | * fix read heap buffer overflow with nbits < 8. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=6724. Credit to OSS Fuzz |
| 31 | |
| 32 | GTiff driver: |
| 33 | * use consistently multiplication/division by 257 when converting between GDAL [0,255] range to TIFF [0,65535] range for color map values (#2213) |
| 34 | |
| 35 | netCDF driver: |
| 36 | * behave correctly when an extra dimension of a variable has a corresponding 1D variable of different names (#7165) |
| 37 | |
| 38 | NITF driver: |
| 39 | * fix swapped lines and samples in IMRFCA (https://github.com/OSGeo/gdal/pull/289) |
| 40 | |
| 41 | PCRaster driver: |
| 42 | * fix fseek/ftell for large files on Windows (#7255) |
| 43 | |
| 44 | RRASTER driver: |
| 45 | * fix wrong declaration of PIXELTYPE=SIGNEDBYTE for datatype=INT1S |
| 46 | * fix reading empty nodatavalue keyword |
| 47 | |
| 48 | Sentinel2 driver: |
| 49 | * make sure that the True Color Image subdatset really uses the R,G,B bands and not the R,R,R (#7251) |
| 50 | |
| 51 | VRT driver: |
| 52 | * VRTDerivedRasterBand: fix detection of Python runtime already loaded when more than 100 modules are linked. Fixes QGIS3 use case (#7213) |
| 53 | |
| 54 | == OGR core == |
| 55 | |
| 56 | * Fixed memory leak in OGRPolygon::PointOnSurface method (https://github.com/OSGeo/gdal/pull/269) |
| 57 | * OGRCT: make sure to free the proj4 context after freeing the projection objects, to avoid crashes |
| 58 | |
| 59 | == OGR utilities == |
| 60 | |
| 61 | * ogr2ogr: honour -select when using -addfiels; fix converting from Memory to Memory datasources (#7217) |
| 62 | |
| 63 | == OGR drivers == |
| 64 | |
| 65 | Carto driver: |
| 66 | * fix append mode by retrieving the sequence name for the primary key (#7203) |
| 67 | * fix insertion with ogr2ogr -preserve_fid (#7216) |
| 68 | * fix missing features when iterating over a SQL result layer with pagination (#6880) |
| 69 | |
| 70 | GeoJSON driver: |
| 71 | * fix writing of id with RFC7946=YES (#7194) |
| 72 | * Add support for json-c v0.13 (#7195) |
| 73 | |
| 74 | GPKG driver: |
| 75 | * fix incorrect rtree_<t>_<c>_update3 trigger statement, as found in https://github.com/opengeospatial/geopackage/issues/414 |
| 76 | |
| 77 | LIBKML driver: |
| 78 | * workaround Windows specific issue with libkml (at least the version used by OSGeo4W at time of writing), where tabulations as coordinate separators aren't properly handled (#7231) |
| 79 | * workaround Windows specific issue if the content of <coordinates> is non-empty and does not contain any digit (#7232) |
| 80 | |
| 81 | MITAB driver: |
| 82 | * fix crash on reading TAB views (#7171) |
| 83 | * add support for SWEREF99 datum (#7256) |
| 84 | |
| 85 | NAS driver: |
| 86 | * also accept unqualified attribute name in wfs:Update |
| 87 | * fix memory leak and potential assertion. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=2661. Credit to OSS Fuzz |
| 88 | |
| 89 | NTF driver: |
| 90 | * fix regression introduced by fix for https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=2166 causing some valid records to be skipped (#7204) |
| 91 | |
| 92 | Shapefile driver: |
| 93 | * fix write heap buffer overflow when provided with empty string filename. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=6992. Credit to OSS Fuzz |
| 94 | * fix potential read heap buffer overflow in single-point polygon in SHPRewindObject(). Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=6993. Credit to OSS Fuzz |
| 95 | |
| 96 | ODBC driver: |
| 97 | * deal with table names that require double quoting (#7242) |
| 98 | |
| 99 | XLSX driver: |
| 100 | * fix updating multi layer document where existing layers where dropped (#7225) |
| 101 | * on writing, use %.16g formatting for floating point numbers (#7230) |
| 102 | |
| 103 | == GNM == |
| 104 | * avoid potential issue with CPL circular buffers (can happen if there are extra drivers that use CPLGet....() functions) |
| 105 | |
| 106 | == SWIG bindings == |
| 107 | |
| 108 | * Fix potential null pointer dereference in Python/Perl Dataset.WriteRaster() and Perl Dataset.ReadRaster() when buffer type is not specified and there is a single band |
| 109 | * Python bindings: add addFields and forceNullable options to gdal.VectorTranslate() (#7217) |
| 110 | * Python bindings: fix build when CC variable is made of serveral words |