From 224ffa75f040995b9536da7ebe488d625c2285c2 Mon Sep 17 00:00:00 2001 From: goatbar Date: Tue, 8 Aug 2017 15:10:27 +0000 Subject: [PATCH] libjson: Clip to INT32_MIN for json_type_double in json_object_get_int(). https://github.com/json-c/json-c/pull/346 Follow on to r39758. Found by autofuzz. git-svn-id: https://svn.osgeo.org/gdal/trunk/gdal@39777 f0d54148-0727-0410-94bb-9a71ac55c965 --- ogr/ogrsf_frmts/geojson/libjson/json_object.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/ogr/ogrsf_frmts/geojson/libjson/json_object.c b/ogr/ogrsf_frmts/geojson/libjson/json_object.c index d60dc2b8f2..4f98a5fe40 100644 --- a/ogr/ogrsf_frmts/geojson/libjson/json_object.c +++ b/ogr/ogrsf_frmts/geojson/libjson/json_object.c @@ -517,6 +517,8 @@ int32_t json_object_get_int(struct json_object *jso) else return (int32_t)cint64; case json_type_double: + if (jso->o.c_double <= INT32_MIN) + return INT32_MIN; if (jso->o.c_double >= INT32_MAX) return INT32_MAX; return (int32_t)jso->o.c_double;