mirror of
https://github.com/opensim/opensim.git
synced 2026-08-05 08:55:56 +08:00
Add configurable path to script engine assemblies
Adding ability to place script engine assemblies outside the codebase directories. Uses new [XEngine] option: ScriptEnginesPath = "path_to_assemblies" Signed-off-by: Melanie <melanie@t-data.com>
This commit is contained in:
@@ -32,7 +32,7 @@ using System.Reflection;
|
||||
namespace OpenSim.Region.ScriptEngine.Shared
|
||||
{
|
||||
[Serializable]
|
||||
public class AssemblyResolver
|
||||
public class AssemblyResolver : MarshalByRefObject
|
||||
{
|
||||
public static Assembly OnAssemblyResolve(object sender,
|
||||
ResolveEventArgs args)
|
||||
@@ -42,9 +42,10 @@ namespace OpenSim.Region.ScriptEngine.Shared
|
||||
|
||||
AppDomain myDomain = (AppDomain)sender;
|
||||
string dirName = myDomain.FriendlyName;
|
||||
string ScriptEnginesPath = myDomain.SetupInformation.PrivateBinPath;
|
||||
|
||||
string[] pathList = new string[] {"bin", "ScriptEngines",
|
||||
Path.Combine("ScriptEngines", dirName)};
|
||||
string[] pathList = new string[] {"bin", ScriptEnginesPath,
|
||||
Path.Combine(ScriptEnginesPath, dirName)};
|
||||
|
||||
string assemblyName = args.Name;
|
||||
if (assemblyName.IndexOf(",") != -1)
|
||||
|
||||
@@ -72,7 +72,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.CodeTools
|
||||
private Dictionary<string, enumCompileType> LanguageMapping = new Dictionary<string, enumCompileType>(StringComparer.CurrentCultureIgnoreCase);
|
||||
|
||||
private string FilePrefix;
|
||||
private string ScriptEnginesPath = "ScriptEngines";
|
||||
private string ScriptEnginesPath = null;
|
||||
// mapping between LSL and C# line/column numbers
|
||||
private ICodeConverter LSL_Converter;
|
||||
|
||||
@@ -95,7 +95,8 @@ namespace OpenSim.Region.ScriptEngine.Shared.CodeTools
|
||||
|
||||
public Compiler(IScriptEngine scriptEngine)
|
||||
{
|
||||
m_scriptEngine = scriptEngine;
|
||||
m_scriptEngine = scriptEngine;;
|
||||
ScriptEnginesPath = scriptEngine.ScriptEnginePath;
|
||||
ReadConfig();
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user