From 72a1d81b510797759a8a5b9e701eb4b791aa8a84 Mon Sep 17 00:00:00 2001 From: Roberto Ierusalimschy Date: Tue, 29 Jul 1997 18:11:10 -0300 Subject: bug: lua_getlocal breaks when called with a CFunction. --- bugs | 2 +- opcode.c | 5 ++++- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/bugs b/bugs index f968fb93..c8bc6efc 100644 --- a/bugs +++ b/bugs @@ -1,3 +1,3 @@ - arquivo comecando com # fica com numero da linha defazado (inout.c 2.69) - LUA_COMPAT2_5 escrito errado em opcode.c (faltou o LUA_) -- +- opcode.c diff --git a/opcode.c b/opcode.c index c7c972fd..3de1745b 100644 --- a/opcode.c +++ b/opcode.c @@ -3,7 +3,7 @@ ** TecCGraf - PUC-Rio */ -char *rcs_opcode="$Id: opcode.c,v 4.17 1997/07/04 14:55:37 roberto Exp roberto $"; +char *rcs_opcode="$Id: opcode.c,v 4.18 1997/07/29 13:35:06 roberto Exp roberto $"; #include #include @@ -538,6 +538,9 @@ int lua_currentline (lua_Function func) lua_Object lua_getlocal (lua_Function func, int local_number, char **name) { TObject *f = luaI_Address(func); + /* check whether func is a Lua function */ + if (ttype(f) != LUA_T_MARK && ttype(f) != LUA_T_FUNCTION) + return LUA_NOOBJECT; *name = luaI_getlocalname(f->value.tf, local_number, lua_currentline(func)); if (*name) { -- cgit v1.2.3-55-g6feb