aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRoberto Ierusalimschy <roberto@inf.puc-rio.br>1997-07-29 18:11:10 -0300
committerRoberto Ierusalimschy <roberto@inf.puc-rio.br>1997-07-29 18:11:10 -0300
commit72a1d81b510797759a8a5b9e701eb4b791aa8a84 (patch)
treed7f47405ff87df5e3c68f77dfcbf473763164218
parent2c580a0afb8dbaf7070a9819b7e81ebde5737ff9 (diff)
downloadlua-72a1d81b510797759a8a5b9e701eb4b791aa8a84.tar.gz
lua-72a1d81b510797759a8a5b9e701eb4b791aa8a84.tar.bz2
lua-72a1d81b510797759a8a5b9e701eb4b791aa8a84.zip
bug: lua_getlocal breaks when called with a CFunction.
-rw-r--r--bugs2
-rw-r--r--opcode.c5
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 @@
1- arquivo comecando com # fica com numero da linha defazado (inout.c 2.69) 1- arquivo comecando com # fica com numero da linha defazado (inout.c 2.69)
2- LUA_COMPAT2_5 escrito errado em opcode.c (faltou o LUA_) 2- LUA_COMPAT2_5 escrito errado em opcode.c (faltou o LUA_)
3- 3- opcode.c
diff --git a/opcode.c b/opcode.c
index c7c972fd..3de1745b 100644
--- a/opcode.c
+++ b/opcode.c
@@ -3,7 +3,7 @@
3** TecCGraf - PUC-Rio 3** TecCGraf - PUC-Rio
4*/ 4*/
5 5
6char *rcs_opcode="$Id: opcode.c,v 4.17 1997/07/04 14:55:37 roberto Exp roberto $"; 6char *rcs_opcode="$Id: opcode.c,v 4.18 1997/07/29 13:35:06 roberto Exp roberto $";
7 7
8#include <setjmp.h> 8#include <setjmp.h>
9#include <stdio.h> 9#include <stdio.h>
@@ -538,6 +538,9 @@ int lua_currentline (lua_Function func)
538lua_Object lua_getlocal (lua_Function func, int local_number, char **name) 538lua_Object lua_getlocal (lua_Function func, int local_number, char **name)
539{ 539{
540 TObject *f = luaI_Address(func); 540 TObject *f = luaI_Address(func);
541 /* check whether func is a Lua function */
542 if (ttype(f) != LUA_T_MARK && ttype(f) != LUA_T_FUNCTION)
543 return LUA_NOOBJECT;
541 *name = luaI_getlocalname(f->value.tf, local_number, lua_currentline(func)); 544 *name = luaI_getlocalname(f->value.tf, local_number, lua_currentline(func));
542 if (*name) 545 if (*name)
543 { 546 {