lua

A copy of the Lua development repository
Log | Files | Refs | README

commit 5cafe5af02bfe2188ba0b69f5a7a8fe44c38ed24
parent 607012ece156112f9c45620ce130699f5448db63
Author: Roberto Ierusalimschy <roberto@inf.puc-rio.br>
Date:   Thu, 30 Dec 1999 16:26:41 -0200

tag method must be a function

Diffstat:
Mlapi.c | 8++++++--
1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/lapi.c b/lapi.c @@ -1,5 +1,5 @@ /* -** $Id: lapi.c,v 1.65 1999/12/23 18:19:57 roberto Exp roberto $ +** $Id: lapi.c,v 1.66 1999/12/27 17:33:22 roberto Exp roberto $ ** Lua API ** See Copyright Notice in lua.h */ @@ -119,8 +119,12 @@ lua_Object lua_gettagmethod (lua_State *L, int tag, const char *event) { lua_Object lua_settagmethod (lua_State *L, int tag, const char *event) { + TObject *method; luaA_checkCparams(L, 1); - luaT_settagmethod(L, tag, event, L->top-1); + method = L->top-1; + if ((ttype(method) != LUA_T_NIL) && (*lua_type(L, method) != 'f')) + lua_error(L, "API error - tag method must be a function or nil"); + luaT_settagmethod(L, tag, event, method); return luaA_putObjectOnTop(L); }