From 5db1f1f6d5dc1f0e21a0bdf0aae87f3d7aa96fc0 Mon Sep 17 00:00:00 2001 From: Benoit Giannangeli Date: Fri, 12 May 2017 08:44:40 +0200 Subject: Boolean TValue should have a boolean value --- src/lcode.js | 4 ++-- src/lundump.js | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) (limited to 'src') diff --git a/src/lcode.js b/src/lcode.js index 1235fe4..2887e6d 100644 --- a/src/lcode.js +++ b/src/lcode.js @@ -799,8 +799,8 @@ const luaK_exp2RK = function(fs, e) { let vk = false; luaK_exp2val(fs, e); switch (e.k) { /* move constants to 'k' */ - case ek.VTRUE: e.u.info = boolK(fs, 1); vk = true; break; - case ek.VFALSE: e.u.info = boolK(fs, 0); vk = true; break; + case ek.VTRUE: e.u.info = boolK(fs, true); vk = true; break; + case ek.VFALSE: e.u.info = boolK(fs, false); vk = true; break; case ek.VNIL: e.u.info = nilK(fs); vk = true; break; case ek.VKINT: e.u.info = luaK_intK(fs, e.u.ival); vk = true; break; case ek.VKFLT: e.u.info = luaK_numberK(fs, e.u.nval); vk = true; break; diff --git a/src/lundump.js b/src/lundump.js index 5ea459e..3c35710 100644 --- a/src/lundump.js +++ b/src/lundump.js @@ -158,7 +158,7 @@ class BytecodeParser { f.k.push(new lobject.TValue(defs.CT.LUA_TNIL, null)); break; case defs.CT.LUA_TBOOLEAN: - f.k.push(new lobject.TValue(defs.CT.LUA_TBOOLEAN, this.readByte())); + f.k.push(new lobject.TValue(defs.CT.LUA_TBOOLEAN, this.readByte() !== 0)); break; case defs.CT.LUA_TNUMFLT: f.k.push(new lobject.TValue(defs.CT.LUA_TNUMFLT, this.readNumber())); -- cgit v1.2.3-54-g00ecf