summaryrefslogtreecommitdiff
path: root/src/ldo.js
diff options
context:
space:
mode:
Diffstat (limited to 'src/ldo.js')
-rw-r--r--src/ldo.js1
1 files changed, 1 insertions, 0 deletions
diff --git a/src/ldo.js b/src/ldo.js
index 9b845e7..fa59e0b 100644
--- a/src/ldo.js
+++ b/src/ldo.js
@@ -77,6 +77,7 @@ const luaD_precall = function(L, off, nresults) {
luaD_hook(L, defs.LUA_HOOKCALL, -1);
let n = f(L); /* do the actual call */
+ assert(typeof n == "number" && n >= 0 && n==n|0, "invalid return value from JS function (expected integer)");
assert(n < L.top - L.ci.funcOff, "not enough elements in the stack");
luaD_poscall(L, ci, L.top - n, n);