Use float instead of double in tiles if the value comes out the same

This commit is contained in:
Eric Fischer 2016-10-27 14:37:46 -07:00
parent 0834626d63
commit 2e026f9b3b

View File

@ -146,8 +146,15 @@ mvt_value retrieve_string(long long off, char *stringpool, int *otype) {
tv.numeric_value.sint_value = v;
}
} else {
tv.type = mvt_double;
tv.numeric_value.double_value = atof(s);
double d = atof(s);
if (d == (float) d) {
tv.type = mvt_float;
tv.numeric_value.float_value = d;
} else {
tv.type = mvt_double;
tv.numeric_value.double_value = d;
}
}
} else if (type == VT_BOOLEAN) {
tv.type = mvt_bool;