diff options
| author | Even Rouault <even.rouault@spatialys.com> | 2020-01-13 18:09:35 +0100 |
|---|---|---|
| committer | Kristian Evers <kristianevers@gmail.com> | 2020-01-13 22:13:58 +0100 |
| commit | 1302fc04633e9b13489f17f77943b2d31370e221 (patch) | |
| tree | 29103963ac22d62ff5acaf66cc4e42d497ecfd99 /src/conversions/unitconvert.cpp | |
| parent | e18e4823ac91b1395cc0b3f30539340bc10ef38d (diff) | |
| download | PROJ-1302fc04633e9b13489f17f77943b2d31370e221.tar.gz PROJ-1302fc04633e9b13489f17f77943b2d31370e221.zip | |
unitconvert with mjd time format: avoid potential integer overflow
Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=20072
Diffstat (limited to 'src/conversions/unitconvert.cpp')
| -rw-r--r-- | src/conversions/unitconvert.cpp | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/conversions/unitconvert.cpp b/src/conversions/unitconvert.cpp index 8472355d..f8439aee 100644 --- a/src/conversions/unitconvert.cpp +++ b/src/conversions/unitconvert.cpp @@ -164,7 +164,8 @@ static double decimalyear_to_mjd(double decimalyear) { double fractional_year; double mjd; - if( decimalyear < -10000 || decimalyear > 10000 ) + // Written this way to deal with NaN input + if( !(decimalyear >= -10000 && decimalyear <= 10000) ) return 0; year = lround(floor(decimalyear)); |
