aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/lstrlib.js5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/lstrlib.js b/src/lstrlib.js
index 8bc2b0e..8e8b58e 100644
--- a/src/lstrlib.js
+++ b/src/lstrlib.js
@@ -225,7 +225,10 @@ const addliteral = function(L, b, arg) {
checkdp(b); /* ensure it uses a dot */
} else { /* integers */
let n = lua.lua_tointeger(L, arg);
- concat(b, lua.to_luastring(sprintf("%d", n)));
+ let format = (n === llimit.LUA_MININTEGER) /* corner case? */
+ ? "0x%" + luaconf.LUA_INTEGER_FRMLEN + "x" /* use hexa */
+ : luaconf.LUA_INTEGER_FMT; /* else use default format */
+ concat(b, lua.to_luastring(sprintf(format, n)));
}
break;
}