diff options
author | Roberto Ierusalimschy <roberto@inf.puc-rio.br> | 2015-11-02 16:48:07 -0200 |
---|---|---|
committer | Roberto Ierusalimschy <roberto@inf.puc-rio.br> | 2015-11-02 16:48:07 -0200 |
commit | ff1289a361eb2b077d0df83eaed21647444541ef (patch) | |
tree | cbbe9372b6a317c06ff1724b36734bdc45df5441 /lapi.c | |
parent | cd73f3ccc5e85bc2b3e45477e2f6e3b705bf3c24 (diff) | |
download | lua-ff1289a361eb2b077d0df83eaed21647444541ef.tar.gz lua-ff1289a361eb2b077d0df83eaed21647444541ef.tar.bz2 lua-ff1289a361eb2b077d0df83eaed21647444541ef.zip |
in 'luaD_call', use two functions instead of one with fixed boolean
argument
Diffstat (limited to 'lapi.c')
-rw-r--r-- | lapi.c | 14 |
1 files changed, 7 insertions, 7 deletions
@@ -1,5 +1,5 @@ | |||
1 | /* | 1 | /* |
2 | ** $Id: lapi.c,v 2.255 2015/09/09 13:45:50 roberto Exp roberto $ | 2 | ** $Id: lapi.c,v 2.256 2015/10/06 16:10:22 roberto Exp roberto $ |
3 | ** Lua API | 3 | ** Lua API |
4 | ** See Copyright Notice in lua.h | 4 | ** See Copyright Notice in lua.h |
5 | */ | 5 | */ |
@@ -121,11 +121,11 @@ LUA_API void lua_xmove (lua_State *from, lua_State *to, int n) { | |||
121 | lua_lock(to); | 121 | lua_lock(to); |
122 | api_checknelems(from, n); | 122 | api_checknelems(from, n); |
123 | api_check(from, G(from) == G(to), "moving among independent states"); | 123 | api_check(from, G(from) == G(to), "moving among independent states"); |
124 | api_check(from, to->ci->top - to->top >= n, "not enough elements to move"); | 124 | api_check(from, to->ci->top - to->top >= n, "stack overflow"); |
125 | from->top -= n; | 125 | from->top -= n; |
126 | for (i = 0; i < n; i++) { | 126 | for (i = 0; i < n; i++) { |
127 | setobj2s(to, to->top, from->top + i); | 127 | setobj2s(to, to->top, from->top + i); |
128 | api_incr_top(to); | 128 | to->top++; /* stack already checked by previous 'api_check' */ |
129 | } | 129 | } |
130 | lua_unlock(to); | 130 | lua_unlock(to); |
131 | } | 131 | } |
@@ -918,10 +918,10 @@ LUA_API void lua_callk (lua_State *L, int nargs, int nresults, | |||
918 | if (k != NULL && L->nny == 0) { /* need to prepare continuation? */ | 918 | if (k != NULL && L->nny == 0) { /* need to prepare continuation? */ |
919 | L->ci->u.c.k = k; /* save continuation */ | 919 | L->ci->u.c.k = k; /* save continuation */ |
920 | L->ci->u.c.ctx = ctx; /* save context */ | 920 | L->ci->u.c.ctx = ctx; /* save context */ |
921 | luaD_call(L, func, nresults, 1); /* do the call */ | 921 | luaD_call(L, func, nresults); /* do the call */ |
922 | } | 922 | } |
923 | else /* no continuation or no yieldable */ | 923 | else /* no continuation or no yieldable */ |
924 | luaD_call(L, func, nresults, 0); /* just do the call */ | 924 | luaD_callnoyield(L, func, nresults); /* just do the call */ |
925 | adjustresults(L, nresults); | 925 | adjustresults(L, nresults); |
926 | lua_unlock(L); | 926 | lua_unlock(L); |
927 | } | 927 | } |
@@ -939,7 +939,7 @@ struct CallS { /* data to 'f_call' */ | |||
939 | 939 | ||
940 | static void f_call (lua_State *L, void *ud) { | 940 | static void f_call (lua_State *L, void *ud) { |
941 | struct CallS *c = cast(struct CallS *, ud); | 941 | struct CallS *c = cast(struct CallS *, ud); |
942 | luaD_call(L, c->func, c->nresults, 0); | 942 | luaD_callnoyield(L, c->func, c->nresults); |
943 | } | 943 | } |
944 | 944 | ||
945 | 945 | ||
@@ -977,7 +977,7 @@ LUA_API int lua_pcallk (lua_State *L, int nargs, int nresults, int errfunc, | |||
977 | L->errfunc = func; | 977 | L->errfunc = func; |
978 | setoah(ci->callstatus, L->allowhook); /* save value of 'allowhook' */ | 978 | setoah(ci->callstatus, L->allowhook); /* save value of 'allowhook' */ |
979 | ci->callstatus |= CIST_YPCALL; /* function can do error recovery */ | 979 | ci->callstatus |= CIST_YPCALL; /* function can do error recovery */ |
980 | luaD_call(L, c.func, nresults, 1); /* do the call */ | 980 | luaD_call(L, c.func, nresults); /* do the call */ |
981 | ci->callstatus &= ~CIST_YPCALL; | 981 | ci->callstatus &= ~CIST_YPCALL; |
982 | L->errfunc = ci->u.c.old_errfunc; | 982 | L->errfunc = ci->u.c.old_errfunc; |
983 | status = LUA_OK; /* if it is here, there were no errors */ | 983 | status = LUA_OK; /* if it is here, there were no errors */ |