aboutsummaryrefslogtreecommitdiff
path: root/src/ldo.js
diff options
context:
space:
mode:
authordaurnimator <quae@daurnimator.com>2017-05-29 14:02:34 +1000
committerdaurnimator <quae@daurnimator.com>2017-05-29 14:02:34 +1000
commit5e169fc1ed36d9cef5f021b1b8be8867902dbdbb (patch)
treeda7ea41b1f593f0a3739935e7fa14ba62575c216 /src/ldo.js
parent30b23bdd3a25ee06784dde1ca03ab90fbe11c992 (diff)
downloadfengari-5e169fc1ed36d9cef5f021b1b8be8867902dbdbb.tar.gz
fengari-5e169fc1ed36d9cef5f021b1b8be8867902dbdbb.tar.bz2
fengari-5e169fc1ed36d9cef5f021b1b8be8867902dbdbb.zip
src/ldo.js: Make sure to allocate TValue before assigning
Diffstat (limited to 'src/ldo.js')
-rw-r--r--src/ldo.js3
1 files changed, 1 insertions, 2 deletions
diff --git a/src/ldo.js b/src/ldo.js
index 4c53f11..0f7a2d3 100644
--- a/src/ldo.js
+++ b/src/ldo.js
@@ -381,9 +381,8 @@ const luaD_rawrunprotected = function(L, f, ud) {
/* copy of luaG_errormsg without the throw */
if (L.errfunc !== 0) { /* is there an error handling function? */
let errfunc = L.errfunc;
- lobject.setobjs2s(L, L.top, L.top - 1); /* move argument */
+ lobject.pushobj2s(L, L.stack[L.top - 1]); /* move argument */
lobject.setobjs2s(L, L.top - 1, errfunc); /* push function */
- L.top++;
luaD_callnoyield(L, L.top - 2, 1);
}