diff options
author | Roberto Ierusalimschy <roberto@inf.puc-rio.br> | 2000-06-26 16:28:31 -0300 |
---|---|---|
committer | Roberto Ierusalimschy <roberto@inf.puc-rio.br> | 2000-06-26 16:28:31 -0300 |
commit | afef009fcea199bd4eff28ea6e5206b59cda9939 (patch) | |
tree | 3954490fd4149900be8e795f630104637cd02f4b /ldo.c | |
parent | b69e712713785394ceefa11ab3e5f9636abea733 (diff) | |
download | lua-afef009fcea199bd4eff28ea6e5206b59cda9939.tar.gz lua-afef009fcea199bd4eff28ea6e5206b59cda9939.tar.bz2 lua-afef009fcea199bd4eff28ea6e5206b59cda9939.zip |
new version of debug system
Diffstat (limited to 'ldo.c')
-rw-r--r-- | ldo.c | 8 |
1 files changed, 6 insertions, 2 deletions
@@ -1,5 +1,5 @@ | |||
1 | /* | 1 | /* |
2 | ** $Id: ldo.c,v 1.78 2000/06/12 13:52:05 roberto Exp roberto $ | 2 | ** $Id: ldo.c,v 1.79 2000/06/16 17:16:34 roberto Exp roberto $ |
3 | ** Stack and Call structure of Lua | 3 | ** Stack and Call structure of Lua |
4 | ** See Copyright Notice in lua.h | 4 | ** See Copyright Notice in lua.h |
5 | */ | 5 | */ |
@@ -185,10 +185,14 @@ void luaD_call (lua_State *L, StkId func, int nResults) { | |||
185 | retry: /* for `function' tag method */ | 185 | retry: /* for `function' tag method */ |
186 | switch (ttype(func)) { | 186 | switch (ttype(func)) { |
187 | case TAG_LCLOSURE: { | 187 | case TAG_LCLOSURE: { |
188 | CallInfo ci; | ||
189 | ci.func = clvalue(func); | ||
190 | ci.pc = 0; | ||
188 | ttype(func) = TAG_LMARK; | 191 | ttype(func) = TAG_LMARK; |
192 | infovalue(func) = &ci; | ||
189 | if (callhook) | 193 | if (callhook) |
190 | luaD_callHook(L, func, callhook, "call"); | 194 | luaD_callHook(L, func, callhook, "call"); |
191 | firstResult = luaV_execute(L, clvalue(func), func+1); | 195 | firstResult = luaV_execute(L, ci.func, func+1); |
192 | break; | 196 | break; |
193 | } | 197 | } |
194 | case TAG_CCLOSURE: { | 198 | case TAG_CCLOSURE: { |