aboutsummaryrefslogtreecommitdiff
path: root/lapi.c
diff options
context:
space:
mode:
Diffstat (limited to 'lapi.c')
-rw-r--r--lapi.c18
1 files changed, 8 insertions, 10 deletions
diff --git a/lapi.c b/lapi.c
index 50871e0c..ee982f31 100644
--- a/lapi.c
+++ b/lapi.c
@@ -1,5 +1,5 @@
1/* 1/*
2** $Id: lapi.c,v 1.45 1999/05/14 12:24:20 roberto Exp roberto $ 2** $Id: lapi.c,v 1.46 1999/06/17 17:04:03 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*/
@@ -131,7 +131,7 @@ int lua_callfunction (lua_Object function)
131 else { 131 else {
132 luaD_openstack((L->stack.top-L->stack.stack)-L->Cstack.base); 132 luaD_openstack((L->stack.top-L->stack.stack)-L->Cstack.base);
133 set_normalized(L->stack.stack+L->Cstack.base, Address(function)); 133 set_normalized(L->stack.stack+L->Cstack.base, Address(function));
134 return luaD_protectedrun(MULT_RET); 134 return luaD_protectedrun();
135 } 135 }
136} 136}
137 137
@@ -675,17 +675,15 @@ lua_Object lua_getref (int ref) {
675** API: set a function as a fallback 675** API: set a function as a fallback
676*/ 676*/
677 677
678static void do_unprotectedrun (lua_CFunction f, int nParams, int nResults) 678static void do_unprotectedrun (lua_CFunction f, int nParams, int nResults) {
679{
680 StkId base = (L->stack.top-L->stack.stack)-nParams;
681 luaD_openstack(nParams); 679 luaD_openstack(nParams);
682 L->stack.stack[base].ttype = LUA_T_CPROTO; 680 (L->stack.top-nParams)->ttype = LUA_T_CPROTO;
683 L->stack.stack[base].value.f = f; 681 (L->stack.top-nParams)->value.f = f;
684 luaD_call(base+1, nResults); 682 luaD_calln(nParams, nResults);
685} 683}
686 684
687lua_Object lua_setfallback (char *name, lua_CFunction fallback) 685
688{ 686lua_Object lua_setfallback (char *name, lua_CFunction fallback) {
689 lua_pushstring(name); 687 lua_pushstring(name);
690 lua_pushcfunction(fallback); 688 lua_pushcfunction(fallback);
691 do_unprotectedrun(luaT_setfallback, 2, 1); 689 do_unprotectedrun(luaT_setfallback, 2, 1);