From d34479ec3465667600f82ae3be7c0d20e840c670 Mon Sep 17 00:00:00 2001 From: Jordan Bayles <jophba@chromium.org> Date: Mon, 24 Jun 2019 14:48:59 -0700 Subject: [PATCH] Issue 920: Fix android build with casting fix This patch removes an unchecked conversion from a 64bit wide type to a 32bit wide type, fixing a compile error on some platforms. Issue:920 --- src/lib_json/json_reader.cpp | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/src/lib_json/json_reader.cpp b/src/lib_json/json_reader.cpp index 05b238a..2316763 100644 --- a/src/lib_json/json_reader.cpp +++ b/src/lib_json/json_reader.cpp @@ -1905,11 +1905,10 @@ CharReader* CharReaderBuilder::newCharReader() const { settings_["allowDroppedNullPlaceholders"].asBool(); features.allowNumericKeys_ = settings_["allowNumericKeys"].asBool(); features.allowSingleQuotes_ = settings_["allowSingleQuotes"].asBool(); -#if defined(JSON_HAS_INT64) - features.stackLimit_ = settings_["stackLimit"].asUInt64(); -#else - features.stackLimit_ = settings_["stackLimit"].asUInt(); -#endif + + // Stack limit is always a size_t, so we get this as an unsigned int + // regardless of it we have 64-bit integer support enabled. + features.stackLimit_ = static_cast<size_t>(settings_["stackLimit"].asUInt()); features.failIfExtra_ = settings_["failIfExtra"].asBool(); features.rejectDupKeys_ = settings_["rejectDupKeys"].asBool(); features.allowSpecialFloats_ = settings_["allowSpecialFloats"].asBool();