diff options
| author | Roberto Ierusalimschy <roberto@inf.puc-rio.br> | 2010-11-10 16:05:36 -0200 |
|---|---|---|
| committer | Roberto Ierusalimschy <roberto@inf.puc-rio.br> | 2010-11-10 16:05:36 -0200 |
| commit | c97aa9485caf253eceebc00cf08cfa8b179fe35e (patch) | |
| tree | b54254b30e4354f4fdad5264cfd4e7baa9e40ab5 /loadlib.c | |
| parent | e885b91326986f1b5a341e9ff1444c4f46c6241a (diff) | |
| download | lua-c97aa9485caf253eceebc00cf08cfa8b179fe35e.tar.gz lua-c97aa9485caf253eceebc00cf08cfa8b179fe35e.tar.bz2 lua-c97aa9485caf253eceebc00cf08cfa8b179fe35e.zip | |
new function 'luaL_setmetatable'
Diffstat (limited to 'loadlib.c')
| -rw-r--r-- | loadlib.c | 5 |
1 files changed, 2 insertions, 3 deletions
| @@ -1,5 +1,5 @@ | |||
| 1 | /* | 1 | /* |
| 2 | ** $Id: loadlib.c,v 1.91 2010/09/07 19:21:39 roberto Exp roberto $ | 2 | ** $Id: loadlib.c,v 1.92 2010/10/29 14:35:09 roberto Exp roberto $ |
| 3 | ** Dynamic library loader for Lua | 3 | ** Dynamic library loader for Lua |
| 4 | ** See Copyright Notice in lua.h | 4 | ** See Copyright Notice in lua.h |
| 5 | ** | 5 | ** |
| @@ -239,8 +239,7 @@ static void **ll_register (lua_State *L, const char *path) { | |||
| 239 | lua_pop(L, 1); /* remove result from gettable */ | 239 | lua_pop(L, 1); /* remove result from gettable */ |
| 240 | plib = (void **)lua_newuserdata(L, sizeof(const void *)); | 240 | plib = (void **)lua_newuserdata(L, sizeof(const void *)); |
| 241 | *plib = NULL; | 241 | *plib = NULL; |
| 242 | luaL_getmetatable(L, "_LOADLIB"); | 242 | luaL_setmetatable(L, "_LOADLIB"); |
| 243 | lua_setmetatable(L, -2); | ||
| 244 | lua_pushfstring(L, "%s%s", LIBPREFIX, path); | 243 | lua_pushfstring(L, "%s%s", LIBPREFIX, path); |
| 245 | lua_pushvalue(L, -2); | 244 | lua_pushvalue(L, -2); |
| 246 | lua_settable(L, LUA_REGISTRYINDEX); | 245 | lua_settable(L, LUA_REGISTRYINDEX); |
