summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRoberto Ierusalimschy <roberto@inf.puc-rio.br>2006-06-07 09:37:17 -0300
committerRoberto Ierusalimschy <roberto@inf.puc-rio.br>2006-06-07 09:37:17 -0300
commitfad7582c9a3cab032c3989a1b36a2ecdf5aaa3c0 (patch)
tree302b6a58505843180ceb446cff13c6bd5f675996
parenta62fca1ebb0798676a11c5bda2406e36de654b6e (diff)
downloadlua-github-fad7582c9a3cab032c3989a1b36a2ecdf5aaa3c0.tar.gz
explicit test for common error (due to compatibility issue)
-rw-r--r--lapi.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/lapi.c b/lapi.c
index 358de905..0fa66eb4 100644
--- a/lapi.c
+++ b/lapi.c
@@ -1,5 +1,5 @@
/*
-** $Id: lapi.c,v 2.53 2006/01/10 12:50:00 roberto Exp roberto $
+** $Id: lapi.c,v 2.54 2006/06/02 15:34:00 roberto Exp roberto $
** Lua API
** See Copyright Notice in lua.h
*/
@@ -199,6 +199,9 @@ LUA_API void lua_insert (lua_State *L, int idx) {
LUA_API void lua_replace (lua_State *L, int idx) {
StkId o;
lua_lock(L);
+ /* explicit test for incompatible code */
+ if (idx == LUA_ENVIRONINDEX && L->ci == L->base_ci)
+ luaG_runerror(L, "no calling environment");
api_checknelems(L, 1);
o = index2adr(L, idx);
api_checkvalidindex(L, o);