Let getfenv() accept no argument

This commit is contained in:
James Roseborough
2010-04-16 14:25:21 +00:00
parent 991b8a274c
commit e5cb343886

View File

@@ -132,7 +132,7 @@ public class BaseLib extends OneArgFunction implements ResourceFinder {
switch ( opcode ) {
case 0: { // "getfenv", // ( [f] ) -> env
if ( ! arg.isfunction() ) {
int i = arg.checkint();
int i = arg.optint(0);
arg = (i==0)? (LuaValue) LuaThread.getRunning(): (LuaValue) LuaThread.getCallstackFunction(i-1);
if ( arg == null )
LuaValue.argerror(1, "invalid level");
@@ -174,7 +174,7 @@ public class BaseLib extends OneArgFunction implements ResourceFinder {
case 3: { // "setfenv", // (f, table) -> void
LuaValue f = arg1;
if ( ! f.isfunction() ) {
int i = arg1.checkint();
int i = arg1.checkint(0);
f = (i==0)? (LuaValue) LuaThread.getRunning(): (LuaValue) LuaThread.getCallstackFunction(i-1);
if ( f == null )
LuaValue.argerror(1, "invalid level");