diff options
| author | Even Rouault <even.rouault@spatialys.com> | 2021-08-10 10:00:41 +0200 |
|---|---|---|
| committer | Even Rouault <even.rouault@spatialys.com> | 2021-08-10 10:04:50 +0200 |
| commit | 1e6ef36db92406f96fe9cc3fa7f75db1cba7254b (patch) | |
| tree | 494587cc6f8a08a26fe32152df3ff64e64350469 /src | |
| parent | e41092a9392ef76967e2c45f5c015cb6e5353b64 (diff) | |
| download | PROJ-1e6ef36db92406f96fe9cc3fa7f75db1cba7254b.tar.gz PROJ-1e6ef36db92406f96fe9cc3fa7f75db1cba7254b.zip | |
Conversion::createUTM(): avoid integer overflow. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=36751
Diffstat (limited to 'src')
| -rw-r--r-- | src/iso19111/operation/conversion.cpp | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/src/iso19111/operation/conversion.cpp b/src/iso19111/operation/conversion.cpp index e2e77562..e884db3c 100644 --- a/src/iso19111/operation/conversion.cpp +++ b/src/iso19111/operation/conversion.cpp @@ -331,6 +331,9 @@ Conversion::create(const util::PropertyMap &properties, */ ConversionNNPtr Conversion::createUTM(const util::PropertyMap &properties, int zone, bool north) { + if (zone < 1 || zone > 60) { + throw InvalidOperation("Invalid zone number"); + } return create( getUTMConversionProperty(properties, zone, north), EPSG_CODE_METHOD_TRANSVERSE_MERCATOR, |
