summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authordaurnimator <quae@daurnimator.com>2018-01-29 14:46:36 +1100
committerdaurnimator <quae@daurnimator.com>2018-01-29 14:49:42 +1100
commit32fee0764e9e5e1a903ef5d16fb94718a86d7a09 (patch)
tree691c82fac8532ec4138c6fc9ed38f21018bd7a8f
parent1046bc323bb5d59b894377ea8af53c3b8f38ad6f (diff)
downloadfengari-32fee0764e9e5e1a903ef5d16fb94718a86d7a09.tar.gz
fengari-32fee0764e9e5e1a903ef5d16fb94718a86d7a09.tar.bz2
fengari-32fee0764e9e5e1a903ef5d16fb94718a86d7a09.zip
src/{luaconf,lobject,lstrlib}.js: lua_getlocaledecpoint now returns char code instead of string
-rw-r--r--src/lobject.js5
-rw-r--r--src/lstrlib.js2
-rw-r--r--src/luaconf.js2
3 files changed, 4 insertions, 5 deletions
diff --git a/src/lobject.js b/src/lobject.js
index 1f26b96..9834df7 100644
--- a/src/lobject.js
+++ b/src/lobject.js
@@ -15,7 +15,6 @@ const {
LUA_OPSHR,
LUA_OPSUB,
LUA_OPUNM,
- char,
constant_types: {
LUA_NUMTAGS,
LUA_TBOOLEAN,
@@ -430,7 +429,7 @@ const MAXSIGDIG = 30;
*/
const lua_strx2number = function(s) {
let i = 0;
- let dot = char[lua_getlocaledecpoint()];
+ let dot = lua_getlocaledecpoint();
let r = 0.0; /* result (accumulator) */
let sigdig = 0; /* number of significant digits */
let nosigdig = 0; /* number of non-significant digits */
@@ -597,7 +596,7 @@ const luaO_tostring = function(L, obj) {
let str = lua_number2str(obj.value);
// Assume no LUA_COMPAT_FLOATSTRING
if (/^[-0123456789]+$/.test(str)) { /* looks like an int? */
- str += lua_getlocaledecpoint() + '0'; /* adds '.0' to result */
+ str += String.fromCharCode(lua_getlocaledecpoint()) + '0'; /* adds '.0' to result */
}
buff = to_luastring(str);
}
diff --git a/src/lstrlib.js b/src/lstrlib.js
index afed664..9863ba5 100644
--- a/src/lstrlib.js
+++ b/src/lstrlib.js
@@ -255,7 +255,7 @@ const addquoted = function(b, s, len) {
*/
const checkdp = function(buff) {
if (luastring_indexOf(buff, '.'.charCodeAt(0)) < 0) { /* no dot? */
- let point = lua_getlocaledecpoint().charCodeAt(0); /* try locale point */
+ let point = lua_getlocaledecpoint(); /* try locale point */
let ppoint = luastring_indexOf(buff, point);
if (ppoint) buff[ppoint] = '.'; /* change it to a dot */
}
diff --git a/src/luaconf.js b/src/luaconf.js
index c2a7781..533e316 100644
--- a/src/luaconf.js
+++ b/src/luaconf.js
@@ -38,7 +38,7 @@ const LUA_INTEGER_FMT = `%${LUA_INTEGER_FRMLEN}d`;
const LUA_NUMBER_FMT = "%.14g";
const lua_getlocaledecpoint = function() {
- return (1.1).toLocaleString().substring(1, 2);
+ return (1.1).toLocaleString().charCodeAt(1);
};
const luai_apicheck = function(l, e) {