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 /src/lib_base.c | |
parent | 16e5605eec2e3882d709c6b123a644f6a8023945 (diff) | |
download | luajit2-46a1b268eb0534182eda0447303c344a071632fe.tar.gz |
Add stricter check for print() vs. tostring() shortcut.
Diffstat (limited to 'src/lib_base.c')
-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) lua_gettable(L, LUA_GLOBALSINDEX); tv = L->top-1; } - shortcut = (tvisfunc(tv) && funcV(tv)->c.ffid == FF_tostring); + shortcut = (tvisfunc(tv) && funcV(tv)->c.ffid == FF_tostring) + && !gcrefu(basemt_it(G(L), LJ_TNUMX)); for (i = 0; i < nargs; i++) { const char *str; size_t size; |