diff options
Diffstat (limited to 'platform/android/src/style/android_conversion.hpp')
-rw-r--r-- | platform/android/src/style/android_conversion.hpp | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/platform/android/src/style/android_conversion.hpp b/platform/android/src/style/android_conversion.hpp index d9b88ab52b..e2b2685928 100644 --- a/platform/android/src/style/android_conversion.hpp +++ b/platform/android/src/style/android_conversion.hpp @@ -59,7 +59,8 @@ inline optional<bool> toBool(const mbgl::android::Value& value) { inline optional<float> toNumber(const mbgl::android::Value& value) { if (value.isNumber()) { - return value.toNumber(); + auto num = value.toFloat(); + return num; } else { return {}; } @@ -81,8 +82,8 @@ inline optional<Value> toValue(const mbgl::android::Value& value) { } else if (value.isString()) { return { value.toString() }; } else if (value.isNumber()) { - // Need to cast to a double here as the float is otherwise considered a bool... - return { (double) value.toNumber() }; + auto doubleVal = value.toDouble(); + return { doubleVal - (int) doubleVal > 0.0 ? doubleVal : value.toLong() }; } else { return {}; } |