Change the return value if the compiler to "object" to allow compilers
to return dynamic method objectsremotes/origin/0.6.7-post-fixes
parent
d2eba2cf22
commit
090868ff4a
|
@ -152,7 +152,7 @@ namespace OpenSim.Region.ScriptEngine.DotNetEngine
|
||||||
{
|
{
|
||||||
// Compile (We assume LSL)
|
// Compile (We assume LSL)
|
||||||
CompiledScriptFile =
|
CompiledScriptFile =
|
||||||
LSLCompiler.PerformScriptCompile(Script,
|
(string)LSLCompiler.PerformScriptCompile(Script,
|
||||||
assetID.ToString(), taskInventoryItem.OwnerID);
|
assetID.ToString(), taskInventoryItem.OwnerID);
|
||||||
|
|
||||||
if (presence != null && (!postOnRez))
|
if (presence != null && (!postOnRez))
|
||||||
|
|
|
@ -34,10 +34,10 @@ namespace OpenSim.Region.ScriptEngine.Interfaces
|
||||||
{
|
{
|
||||||
public interface ICompiler
|
public interface ICompiler
|
||||||
{
|
{
|
||||||
string PerformScriptCompile(string source, string asset, UUID ownerID);
|
object PerformScriptCompile(string source, string asset, UUID ownerID);
|
||||||
string[] GetWarnings();
|
string[] GetWarnings();
|
||||||
Dictionary<KeyValuePair<int, int>, KeyValuePair<int, int>>
|
Dictionary<KeyValuePair<int, int>, KeyValuePair<int, int>>
|
||||||
LineMap();
|
LineMap();
|
||||||
string GetAssemblyName(UUID assetID);
|
object GetCompilerOutput(UUID assetID);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -259,7 +259,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.CodeTools
|
||||||
// }
|
// }
|
||||||
//}
|
//}
|
||||||
|
|
||||||
public string GetAssemblyName(UUID assetID)
|
public object GetCompilerOutput(UUID assetID)
|
||||||
{
|
{
|
||||||
return Path.Combine(ScriptEnginesPath, Path.Combine(
|
return Path.Combine(ScriptEnginesPath, Path.Combine(
|
||||||
m_scriptEngine.World.RegionInfo.RegionID.ToString(),
|
m_scriptEngine.World.RegionInfo.RegionID.ToString(),
|
||||||
|
@ -271,7 +271,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.CodeTools
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="Script">LSL script</param>
|
/// <param name="Script">LSL script</param>
|
||||||
/// <returns>Filename to .dll assembly</returns>
|
/// <returns>Filename to .dll assembly</returns>
|
||||||
public string PerformScriptCompile(string Script, string asset, UUID ownerUUID)
|
public object PerformScriptCompile(string Script, string asset, UUID ownerUUID)
|
||||||
{
|
{
|
||||||
m_positionMap = null;
|
m_positionMap = null;
|
||||||
m_warnings.Clear();
|
m_warnings.Clear();
|
||||||
|
|
|
@ -590,8 +590,8 @@ namespace OpenSim.Region.ScriptEngine.XEngine
|
||||||
{
|
{
|
||||||
lock (m_AddingAssemblies)
|
lock (m_AddingAssemblies)
|
||||||
{
|
{
|
||||||
assembly = m_Compiler.PerformScriptCompile(script,
|
assembly = (string)m_Compiler.PerformScriptCompile(script,
|
||||||
assetID.ToString(), item.OwnerID);
|
assetID.ToString(), item.OwnerID);
|
||||||
if (!m_AddingAssemblies.ContainsKey(assembly)) {
|
if (!m_AddingAssemblies.ContainsKey(assembly)) {
|
||||||
m_AddingAssemblies[assembly] = 1;
|
m_AddingAssemblies[assembly] = 1;
|
||||||
} else {
|
} else {
|
||||||
|
|
Loading…
Reference in New Issue