diff options
author | Mike Pall <mike> | 2019-12-08 19:40:24 +0100 |
---|---|---|
committer | Mike Pall <mike> | 2019-12-08 19:40:24 +0100 |
commit | 46a1b268eb0534182eda0447303c344a071632fe (patch) | |
tree | 4133530903200cd0ab3cfcb883db7d3d3ff5f047 | |
parent | 16e5605eec2e3882d709c6b123a644f6a8023945 (diff) | |
download | luajit-46a1b268eb0534182eda0447303c344a071632fe.tar.gz luajit-46a1b268eb0534182eda0447303c344a071632fe.tar.bz2 luajit-46a1b268eb0534182eda0447303c344a071632fe.zip |
Add stricter check for print() vs. tostring() shortcut.
-rw-r--r-- | src/lib_base.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/lib_base.c b/src/lib_base.c index 162bbbb2..98ed3d60 100644 --- a/src/lib_base.c +++ b/src/lib_base.c | |||
@@ -504,7 +504,8 @@ LJLIB_CF(print) | |||
504 | lua_gettable(L, LUA_GLOBALSINDEX); | 504 | lua_gettable(L, LUA_GLOBALSINDEX); |
505 | tv = L->top-1; | 505 | tv = L->top-1; |
506 | } | 506 | } |
507 | shortcut = (tvisfunc(tv) && funcV(tv)->c.ffid == FF_tostring); | 507 | shortcut = (tvisfunc(tv) && funcV(tv)->c.ffid == FF_tostring) |
508 | && !gcrefu(basemt_it(G(L), LJ_TNUMX)); | ||
508 | for (i = 0; i < nargs; i++) { | 509 | for (i = 0; i < nargs; i++) { |
509 | const char *str; | 510 | const char *str; |
510 | size_t size; | 511 | size_t size; |