aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRoberto Ierusalimschy <roberto@inf.puc-rio.br>1997-04-03 15:27:06 -0300
committerRoberto Ierusalimschy <roberto@inf.puc-rio.br>1997-04-03 15:27:06 -0300
commit1ea6e8064cdfa13ba2298783eb87de58568ea998 (patch)
tree763be2cfdbc8de6fd0fb1366a93473b49b5dfeb2
parentc1746340c3fc2128c0ad4f1b356820064c722e85 (diff)
downloadlua-1ea6e8064cdfa13ba2298783eb87de58568ea998.tar.gz
lua-1ea6e8064cdfa13ba2298783eb87de58568ea998.tar.bz2
lua-1ea6e8064cdfa13ba2298783eb87de58568ea998.zip
"setintmethod" returns old method (to be coerent with seterrormethod).
BUG: wrong pointer arithmetic (index out of range when comparing). obs: version 4 is due to internal methods.
-rw-r--r--opcode.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/opcode.c b/opcode.c
index e36ba184..590c0ef7 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 3.92 1997/04/02 22:52:42 roberto Exp roberto $"; 6char *rcs_opcode="$Id: opcode.c,v 3.93 1997/04/02 23:04:12 roberto Exp roberto $";
7 7
8#include <setjmp.h> 8#include <setjmp.h>
9#include <stdio.h> 9#include <stdio.h>
@@ -412,9 +412,9 @@ static void getglobal (Word n)
412*/ 412*/
413void lua_travstack (int (*fn)(TObject *)) 413void lua_travstack (int (*fn)(TObject *))
414{ 414{
415 TObject *o; 415 StkId i;
416 for (o = top-1; o >= stack; o--) 416 for (i = (top-1)-stack; i>=0; i--)
417 fn (o); 417 fn (stack+i);
418} 418}
419 419
420 420
@@ -671,7 +671,7 @@ void lua_setintmethod (int tag, char *event, lua_CFunction method)
671 lua_pushcfunction (method); 671 lua_pushcfunction (method);
672 else 672 else
673 lua_pushnil(); 673 lua_pushnil();
674 do_unprotectedrun(luaI_setintmethod, 3, 0); 674 do_unprotectedrun(luaI_setintmethod, 3, 1);
675} 675}
676 676
677void lua_seterrormethod (lua_CFunction method) 677void lua_seterrormethod (lua_CFunction method)