diff options
-rw-r--r-- | src/lj_bcwrite.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/lj_bcwrite.c b/src/lj_bcwrite.c index 2c70ff47..d3986ea4 100644 --- a/src/lj_bcwrite.c +++ b/src/lj_bcwrite.c | |||
@@ -189,7 +189,8 @@ static void bcwrite_knum(BCWriteCtx *ctx, GCproto *pt) | |||
189 | goto save_int; | 189 | goto save_int; |
190 | } else { | 190 | } else { |
191 | /* Write a 33 bit ULEB128 for the int (lsb=0) or loword (lsb=1). */ | 191 | /* Write a 33 bit ULEB128 for the int (lsb=0) or loword (lsb=1). */ |
192 | if (!LJ_DUALNUM) { /* Narrow number constants to integers. */ | 192 | if (!LJ_DUALNUM && o->u32.hi != LJ_KEYINDEX) { |
193 | /* Narrow number constants to integers. */ | ||
193 | lua_Number num = numV(o); | 194 | lua_Number num = numV(o); |
194 | k = lj_num2int(num); | 195 | k = lj_num2int(num); |
195 | if (num == (lua_Number)k) { /* -0 is never a constant. */ | 196 | if (num == (lua_Number)k) { /* -0 is never a constant. */ |