summaryrefslogtreecommitdiff
path: root/platform/android/src/style/android_conversion.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'platform/android/src/style/android_conversion.hpp')
-rw-r--r--platform/android/src/style/android_conversion.hpp7
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 {};
}