uses return value from luaL_getmetatable

This commit is contained in:
Roberto Ierusalimschy 2014-11-12 11:32:27 -02:00
parent 52c0f9575b
commit cb59019f58
1 changed files with 2 additions and 3 deletions

View File

@ -1,5 +1,5 @@
/* /*
** $Id: lauxlib.c,v 1.272 2014/10/29 16:11:17 roberto Exp roberto $ ** $Id: lauxlib.c,v 1.273 2014/11/02 19:19:04 roberto Exp roberto $
** Auxiliary functions for building Lua libraries ** Auxiliary functions for building Lua libraries
** See Copyright Notice in lua.h ** See Copyright Notice in lua.h
*/ */
@ -279,8 +279,7 @@ LUALIB_API int luaL_execresult (lua_State *L, int stat) {
*/ */
LUALIB_API int luaL_newmetatable (lua_State *L, const char *tname) { LUALIB_API int luaL_newmetatable (lua_State *L, const char *tname) {
luaL_getmetatable(L, tname); /* try to get metatable */ if (luaL_getmetatable(L, tname)) /* name already in use? */
if (!lua_isnil(L, -1)) /* name already in use? */
return 0; /* leave previous value on top, but return 0 */ return 0; /* leave previous value on top, but return 0 */
lua_pop(L, 1); lua_pop(L, 1);
lua_newtable(L); /* create metatable */ lua_newtable(L); /* create metatable */