aboutsummaryrefslogtreecommitdiff
path: root/lapi.c
diff options
context:
space:
mode:
authorRoberto Ierusalimschy <roberto@inf.puc-rio.br>2003-02-11 08:46:24 -0200
committerRoberto Ierusalimschy <roberto@inf.puc-rio.br>2003-02-11 08:46:24 -0200
commit7a40cdbda0a171da223094208dd3c6e3eca13922 (patch)
treec95840411ac26e11b0683d4a5fc88402c1d0a70a /lapi.c
parent3cdeacbbfba9308dd2dcc995a9bcc510bfcead31 (diff)
downloadlua-7a40cdbda0a171da223094208dd3c6e3eca13922.tar.gz
lua-7a40cdbda0a171da223094208dd3c6e3eca13922.tar.bz2
lua-7a40cdbda0a171da223094208dd3c6e3eca13922.zip
different variables for number of upvalues and size of upvalue array
(makes code clearer)
Diffstat (limited to 'lapi.c')
-rw-r--r--lapi.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/lapi.c b/lapi.c
index 998bac0a..b413ada7 100644
--- a/lapi.c
+++ b/lapi.c
@@ -1,5 +1,5 @@
1/* 1/*
2** $Id: lapi.c,v 1.226 2002/12/04 17:38:31 roberto Exp roberto $ 2** $Id: lapi.c,v 1.227 2002/12/19 11:11:55 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*/
@@ -872,14 +872,16 @@ static const char *aux_upvalue (lua_State *L, int funcindex, int n,
872 StkId fi = luaA_index(L, funcindex); 872 StkId fi = luaA_index(L, funcindex);
873 if (!ttisfunction(fi)) return NULL; 873 if (!ttisfunction(fi)) return NULL;
874 f = clvalue(fi); 874 f = clvalue(fi);
875 if (n > f->l.nupvalues) return NULL;
876 if (f->c.isC) { 875 if (f->c.isC) {
876 if (n > f->c.nupvalues) return NULL;
877 *val = &f->c.upvalue[n-1]; 877 *val = &f->c.upvalue[n-1];
878 return ""; 878 return "";
879 } 879 }
880 else { 880 else {
881 Proto *p = f->l.p;
882 if (n > p->sizeupvalues) return NULL;
881 *val = f->l.upvals[n-1]->v; 883 *val = f->l.upvals[n-1]->v;
882 return getstr(f->l.p->upvalues[n-1]); 884 return getstr(p->upvalues[n-1]);
883 } 885 }
884} 886}
885 887