From e5cb3438860adc0bfae84407f884531bb30bc200 Mon Sep 17 00:00:00 2001 From: James Roseborough Date: Fri, 16 Apr 2010 14:25:21 +0000 Subject: [PATCH] Let getfenv() accept no argument --- src/core/org/luaj/vm2/lib/BaseLib.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/core/org/luaj/vm2/lib/BaseLib.java b/src/core/org/luaj/vm2/lib/BaseLib.java index 49d2d2db..d4ed4716 100644 --- a/src/core/org/luaj/vm2/lib/BaseLib.java +++ b/src/core/org/luaj/vm2/lib/BaseLib.java @@ -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");