diff options
author | Roberto Ierusalimschy <roberto@inf.puc-rio.br> | 2017-10-31 15:54:35 -0200 |
---|---|---|
committer | Roberto Ierusalimschy <roberto@inf.puc-rio.br> | 2017-10-31 15:54:35 -0200 |
commit | c5482468fde11c6c169da3b331a0653455f8fc94 (patch) | |
tree | 2a48592c73f5a94f1615793d66cb7fcf1c5b8946 /lvm.c | |
parent | ad5dcdcf0f1e139c8cc5b1aafd11db69f54010de (diff) | |
download | lua-c5482468fde11c6c169da3b331a0653455f8fc94.tar.gz lua-c5482468fde11c6c169da3b331a0653455f8fc94.tar.bz2 lua-c5482468fde11c6c169da3b331a0653455f8fc94.zip |
baby steps to remove 'CallInfo': keeping 'L->func' correct
Diffstat (limited to 'lvm.c')
-rw-r--r-- | lvm.c | 3 |
1 files changed, 2 insertions, 1 deletions
@@ -1,5 +1,5 @@ | |||
1 | /* | 1 | /* |
2 | ** $Id: lvm.c,v 2.298 2017/10/04 15:49:24 roberto Exp roberto $ | 2 | ** $Id: lvm.c,v 2.299 2017/10/04 21:56:32 roberto Exp roberto $ |
3 | ** Lua virtual machine | 3 | ** Lua virtual machine |
4 | ** See Copyright Notice in lua.h | 4 | ** See Copyright Notice in lua.h |
5 | */ | 5 | */ |
@@ -1390,6 +1390,7 @@ void luaV_execute (lua_State *L) { | |||
1390 | oci->u.l.savedpc = nci->u.l.savedpc; | 1390 | oci->u.l.savedpc = nci->u.l.savedpc; |
1391 | oci->callstatus |= CIST_TAIL; /* function was tail called */ | 1391 | oci->callstatus |= CIST_TAIL; /* function was tail called */ |
1392 | ci = L->ci = oci; /* remove new frame */ | 1392 | ci = L->ci = oci; /* remove new frame */ |
1393 | L->func = ofunc; | ||
1393 | lua_assert(L->top == | 1394 | lua_assert(L->top == |
1394 | oci->func + 1 + getproto(s2v(ofunc))->maxstacksize); | 1395 | oci->func + 1 + getproto(s2v(ofunc))->maxstacksize); |
1395 | goto newframe; /* restart luaV_execute over new Lua function */ | 1396 | goto newframe; /* restart luaV_execute over new Lua function */ |