aboutsummaryrefslogtreecommitdiff
path: root/lvm.c
diff options
context:
space:
mode:
authorRoberto Ierusalimschy <roberto@inf.puc-rio.br>2001-10-31 17:58:11 -0200
committerRoberto Ierusalimschy <roberto@inf.puc-rio.br>2001-10-31 17:58:11 -0200
commitaf59848219abcab589ac174c829102ed8a2adc8d (patch)
tree3deabe4b29f255013ae2fe83553ffa48f578d90d /lvm.c
parent46347d768e571ba9b36581c36d11d2de1dee2cfb (diff)
downloadlua-af59848219abcab589ac174c829102ed8a2adc8d.tar.gz
lua-af59848219abcab589ac174c829102ed8a2adc8d.tar.bz2
lua-af59848219abcab589ac174c829102ed8a2adc8d.zip
tables of globals accessible through pseudo-index in C API
Diffstat (limited to 'lvm.c')
-rw-r--r--lvm.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/lvm.c b/lvm.c
index 29877135..6f0d9ab7 100644
--- a/lvm.c
+++ b/lvm.c
@@ -1,5 +1,5 @@
1/* 1/*
2** $Id: lvm.c,v 1.195 2001/10/02 16:45:03 roberto Exp $ 2** $Id: lvm.c,v 1.196 2001/10/25 19:14:14 roberto Exp roberto $
3** Lua virtual machine 3** Lua virtual machine
4** See Copyright Notice in lua.h 4** See Copyright Notice in lua.h
5*/ 5*/
@@ -176,7 +176,7 @@ void luaV_settable (lua_State *L, StkId t, TObject *key, StkId val) {
176 176
177 177
178void luaV_getglobal (lua_State *L, TString *name, StkId res) { 178void luaV_getglobal (lua_State *L, TString *name, StkId res) {
179 const TObject *value = luaH_getstr(L->gt, name); 179 const TObject *value = luaH_getstr(hvalue(&L->gt), name);
180 Closure *tm; 180 Closure *tm;
181 if (!HAS_TM_GETGLOBAL(L, ttype(value)) || /* is there a tag method? */ 181 if (!HAS_TM_GETGLOBAL(L, ttype(value)) || /* is there a tag method? */
182 (tm = luaT_gettmbyObj(G(L), value, TM_GETGLOBAL)) == NULL) { 182 (tm = luaT_gettmbyObj(G(L), value, TM_GETGLOBAL)) == NULL) {
@@ -188,12 +188,12 @@ void luaV_getglobal (lua_State *L, TString *name, StkId res) {
188 188
189 189
190void luaV_setglobal (lua_State *L, TString *name, StkId val) { 190void luaV_setglobal (lua_State *L, TString *name, StkId val) {
191 const TObject *oldvalue = luaH_getstr(L->gt, name); 191 const TObject *oldvalue = luaH_getstr(hvalue(&L->gt), name);
192 Closure *tm; 192 Closure *tm;
193 if (!HAS_TM_SETGLOBAL(L, ttype(oldvalue)) || /* no tag methods? */ 193 if (!HAS_TM_SETGLOBAL(L, ttype(oldvalue)) || /* no tag methods? */
194 (tm = luaT_gettmbyObj(G(L), oldvalue, TM_SETGLOBAL)) == NULL) { 194 (tm = luaT_gettmbyObj(G(L), oldvalue, TM_SETGLOBAL)) == NULL) {
195 if (oldvalue == &luaO_nilobject) 195 if (oldvalue == &luaO_nilobject)
196 luaH_setstr(L, L->gt, name, val); /* raw set */ 196 luaH_setstr(L, hvalue(&L->gt), name, val); /* raw set */
197 else 197 else
198 settableval(oldvalue, val); /* warning: tricky optimization! */ 198 settableval(oldvalue, val); /* warning: tricky optimization! */
199 } 199 }