diff options
Diffstat (limited to 'src/lj_ffrecord.c')
-rw-r--r-- | src/lj_ffrecord.c | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/src/lj_ffrecord.c b/src/lj_ffrecord.c index 2296dac6..5b618a80 100644 --- a/src/lj_ffrecord.c +++ b/src/lj_ffrecord.c | |||
@@ -253,13 +253,13 @@ static void LJ_FASTCALL recff_select(jit_State *J, RecordFFData *rd) | |||
253 | static void LJ_FASTCALL recff_tonumber(jit_State *J, RecordFFData *rd) | 253 | static void LJ_FASTCALL recff_tonumber(jit_State *J, RecordFFData *rd) |
254 | { | 254 | { |
255 | TRef tr = J->base[0]; | 255 | TRef tr = J->base[0]; |
256 | TRef base = J->base[1]; | ||
257 | if (tr && base) { | ||
258 | base = lj_ir_toint(J, base); | ||
259 | if (!tref_isk(base) || IR(tref_ref(base))->i != 10) | ||
260 | recff_nyiu(J); | ||
261 | } | ||
256 | if (tref_isnumber_str(tr)) { | 262 | if (tref_isnumber_str(tr)) { |
257 | TRef base = J->base[1]; | ||
258 | if (base) { | ||
259 | base = lj_ir_toint(J, base); | ||
260 | if (!tref_isk(base) || IR(tref_ref(base))->i != 10) | ||
261 | recff_nyiu(J); | ||
262 | } | ||
263 | if (tref_isstr(tr)) { | 263 | if (tref_isstr(tr)) { |
264 | TValue tmp; | 264 | TValue tmp; |
265 | if (!lj_str_tonum(strV(&rd->argv[0]), &tmp)) | 265 | if (!lj_str_tonum(strV(&rd->argv[0]), &tmp)) |