From: Jo-Philipp Wich Date: Sun, 13 Jan 2013 19:37:00 +0000 (+0100) Subject: lua: pass u64 blob type as double to Lua X-Git-Url: http://git.archive.openwrt.org/?p=project%2Fubus.git;a=commitdiff_plain;h=bf566871bd6a633e4504c60c6fc55b2a97305a50 lua: pass u64 blob type as double to Lua --- diff --git a/lua/ubus.c b/lua/ubus.c index cbda37a..77624d7 100644 --- a/lua/ubus.c +++ b/lua/ubus.c @@ -67,7 +67,6 @@ ubus_lua_parse_blob(lua_State *L, struct blob_attr *attr, bool table) int len; int off = 0; void *data; - char buf[32]; if (!blobmsg_check_attr(attr, false)) return 0; @@ -96,9 +95,7 @@ ubus_lua_parse_blob(lua_State *L, struct blob_attr *attr, bool table) break; case BLOBMSG_TYPE_INT64: - /* NB: Lua cannot handle 64bit, format value as string and push that */ - sprintf(buf, "%lld", (long long int) be64_to_cpu(*(uint64_t *)data)); - lua_pushstring(L, buf); + lua_pushnumber(L, (double) be64_to_cpu(*(uint64_t *)data)); break; case BLOBMSG_TYPE_STRING: