diff core/src/luan/modules/PackageLuan.java @ 296:7ea6dfdf81ba

add env param to load_file() git-svn-id: https://luan-java.googlecode.com/svn/trunk@297 21e917c8-12df-6dd8-5cb6-c86387c605b9
author fschmidt@gmail.com <fschmidt@gmail.com@21e917c8-12df-6dd8-5cb6-c86387c605b9>
date Mon, 15 Dec 2014 08:03:32 +0000
parents 4a0a84c38617
children 899253043270
line wrap: on
line diff
--- a/core/src/luan/modules/PackageLuan.java	Fri Dec 12 09:45:13 2014 +0000
+++ b/core/src/luan/modules/PackageLuan.java	Mon Dec 15 08:03:32 2014 +0000
@@ -83,18 +83,18 @@
 		return mod;
 	}
 
-	static LuanFunction loader(LuanState luan,String name,boolean loading) throws LuanException {
+	static LuanFunction loader(LuanState luan,String name,boolean loading,LuanTable env) throws LuanException {
 		LuanTable t = IoLuan.Uri(luan,name,loading);
 		if( t == null )
 			return null;
 		LuanFunction loader = (LuanFunction)t.get("loader");
 		if( loader == null )
 			return null;
-		return (LuanFunction)Luan.first(luan.call(loader,new Object[]{name}));
+		return (LuanFunction)Luan.first(luan.call(loader,new Object[]{name,env}));
 	}
 
 	public static Object[] search(LuanState luan,String modName) throws LuanException {
-		LuanFunction fn = loader(luan,modName,true);
+		LuanFunction fn = loader(luan,modName,true,null);
 		return fn==null ? null : new Object[]{fn,modName};
 	}