case json_type_boolean:
blobmsg_add_u8(b, name, json_object_get_boolean(obj));
break;
- case json_type_int:
- blobmsg_add_u32(b, name, json_object_get_int(obj));
+ case json_type_int: {
+ int64_t i64 = json_object_get_int64(obj);
+ if (i64 >= INT32_MIN && i64 <= INT32_MAX) {
+ blobmsg_add_u32(b, name, (uint32_t)i64);
+ } else {
+ blobmsg_add_u64(b, name, (uint64_t)i64);
+ }
break;
+ }
case json_type_double:
blobmsg_add_double(b, name, json_object_get_double(obj));
break;
32767 (i32)
-2147483648 (i32)
2147483647 (i32)
- -2147483648 (i32)
- 2147483647 (i32)
+ -9223372036854775808 (i64)
+ 9223372036854775807 (i64)
133.700000 (dbl)
}
Testdata: {
\tbar-max : 32767 (i32) (esc)
\tbaz-min : -2147483648 (i32) (esc)
\tbaz-max : 2147483647 (i32) (esc)
- \ttaz-min : -2147483648 (i32) (esc)
- \ttaz-max : 2147483647 (i32) (esc)
+ \ttaz-min : -9223372036854775808 (i64) (esc)
+ \ttaz-max : 9223372036854775807 (i64) (esc)
\tworld : 2 (str) (esc)
}
32767 (i32)
-2147483648 (i32)
2147483647 (i32)
- -2147483648 (i32)
- 2147483647 (i32)
+ -9223372036854775808 (i64)
+ 9223372036854775807 (i64)
133.700000 (dbl)
}
Testdata: {
\tbar-max : 32767 (i32) (esc)
\tbaz-min : -2147483648 (i32) (esc)
\tbaz-max : 2147483647 (i32) (esc)
- \ttaz-min : -2147483648 (i32) (esc)
- \ttaz-max : 2147483647 (i32) (esc)
+ \ttaz-min : -9223372036854775808 (i64) (esc)
+ \ttaz-max : 9223372036854775807 (i64) (esc)
\tworld : 2 (str) (esc)
}
32767 (i32)
-2147483648 (i32)
2147483647 (i32)
- -2147483648 (i32)
- 2147483647 (i32)
+ -9223372036854775808 (i64)
+ 9223372036854775807 (i64)
133.700000 (dbl)
}
Testdata: {
\tbar-max : 32767 (i32) (esc)
\tbaz-min : -2147483648 (i32) (esc)
\tbaz-max : 2147483647 (i32) (esc)
- \ttaz-min : -2147483648 (i32) (esc)
- \ttaz-max : 2147483647 (i32) (esc)
+ \ttaz-min : -9223372036854775808 (i64) (esc)
+ \ttaz-max : 9223372036854775807 (i64) (esc)
\tworld : 2 (str) (esc)
}
32767 (i32)
-2147483648 (i32)
2147483647 (i32)
- -2147483648 (i32)
- 2147483647 (i32)
+ -9223372036854775808 (i64)
+ 9223372036854775807 (i64)
133.700000 (dbl)
}
Testdata: {
\tbar-max : 32767 (i32) (esc)
\tbaz-min : -2147483648 (i32) (esc)
\tbaz-max : 2147483647 (i32) (esc)
- \ttaz-min : -2147483648 (i32) (esc)
- \ttaz-max : 2147483647 (i32) (esc)
+ \ttaz-min : -9223372036854775808 (i64) (esc)
+ \ttaz-max : 9223372036854775807 (i64) (esc)
\tworld : 2 (str) (esc)
}