More exception checks and crash hints
If no scriptengine is specified then don't try to load any.ThreadPoolClientBranch
parent
f47bcb0f98
commit
c62328950a
|
@ -56,7 +56,7 @@ namespace OpenSim.ApplicationPlugins.LoadRegions
|
||||||
{
|
{
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
if (openSim.ConfigSource.Configs["RemoteAdmin"].GetBoolean("enabled", false))
|
if (openSim.ConfigSource.Configs["RemoteAdmin"] != null && openSim.ConfigSource.Configs["RemoteAdmin"].GetBoolean("enabled", false))
|
||||||
{
|
{
|
||||||
m_log.Info("[RADMIN]: Remote Admin Plugin Enabled");
|
m_log.Info("[RADMIN]: Remote Admin Plugin Enabled");
|
||||||
requiredPassword = openSim.ConfigSource.Configs["RemoteAdmin"].GetString("access_password", String.Empty);
|
requiredPassword = openSim.ConfigSource.Configs["RemoteAdmin"].GetString("access_password", String.Empty);
|
||||||
|
|
|
@ -421,8 +421,8 @@ namespace OpenSim.Framework.Data.MySQL
|
||||||
public void StoreLandObject(Land parcel, LLUUID regionUUID)
|
public void StoreLandObject(Land parcel, LLUUID regionUUID)
|
||||||
{
|
{
|
||||||
// Does the new locking fix it?
|
// Does the new locking fix it?
|
||||||
m_log.Info("[DATASTORE]: Tedds temp fix: Waiting 3 seconds for stuff to catch up. (Someone please fix! :))");
|
m_log.Info("[DATASTORE]: Tedds temp fix: Waiting 3 seconds to avoid others writing to table while we hold a dataset of it. (Someone please fix! :))");
|
||||||
System.Threading.Thread.Sleep(2500 + rnd.Next(300, 900));
|
System.Threading.Thread.Sleep(2500 + rnd.Next(0, 1000));
|
||||||
|
|
||||||
lock (m_dataSet)
|
lock (m_dataSet)
|
||||||
{
|
{
|
||||||
|
|
|
@ -559,6 +559,7 @@ namespace OpenSim.Framework.Servers
|
||||||
catch (Exception e)
|
catch (Exception e)
|
||||||
{
|
{
|
||||||
m_log.Warn("[HTTPD]: Error - " + e.Message);
|
m_log.Warn("[HTTPD]: Error - " + e.Message);
|
||||||
|
m_log.Warn("Tip: Do you have permission to listen on port " + m_port + "?");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -50,8 +50,12 @@ namespace OpenSim.Framework.Statistics
|
||||||
|
|
||||||
public void AddTexture(AssetBase image)
|
public void AddTexture(AssetBase image)
|
||||||
{
|
{
|
||||||
texturesInCache++;
|
// Tedd: I added null check to avoid exception. Don't know if texturesInCache should ++ anyway?
|
||||||
textureCacheMemoryUsage += image.Data.Length;
|
if (image.Data != null)
|
||||||
|
{
|
||||||
|
texturesInCache++;
|
||||||
|
textureCacheMemoryUsage += image.Data.Length;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
|
|
@ -181,7 +181,7 @@ namespace OpenSim
|
||||||
config.Set("storage_prim_inventories", true);
|
config.Set("storage_prim_inventories", true);
|
||||||
config.Set("startup_console_commands_file", String.Empty);
|
config.Set("startup_console_commands_file", String.Empty);
|
||||||
config.Set("shutdown_console_commands_file", String.Empty);
|
config.Set("shutdown_console_commands_file", String.Empty);
|
||||||
config.Set("script_engine", "OpenSim.Region.ScriptEngine.DotNetEngine.dll");
|
config.Set("script_engine", "");
|
||||||
config.Set("asset_database", "sqlite");
|
config.Set("asset_database", "sqlite");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -264,7 +264,7 @@ namespace OpenSim
|
||||||
m_startupCommandsFile = startupConfig.GetString("startup_console_commands_file", String.Empty);
|
m_startupCommandsFile = startupConfig.GetString("startup_console_commands_file", String.Empty);
|
||||||
m_shutdownCommandsFile = startupConfig.GetString("shutdown_console_commands_file", String.Empty);
|
m_shutdownCommandsFile = startupConfig.GetString("shutdown_console_commands_file", String.Empty);
|
||||||
|
|
||||||
m_scriptEngine = startupConfig.GetString("script_engine", "OpenSim.Region.ScriptEngine.DotNetEngine.dll");
|
m_scriptEngine = startupConfig.GetString("script_engine", "");
|
||||||
|
|
||||||
m_assetStorage = startupConfig.GetString("asset_database", "sqlite");
|
m_assetStorage = startupConfig.GetString("asset_database", "sqlite");
|
||||||
|
|
||||||
|
@ -449,18 +449,26 @@ namespace OpenSim
|
||||||
m_moduleLoader.PickupModules(scene, ".");
|
m_moduleLoader.PickupModules(scene, ".");
|
||||||
//m_moduleLoader.PickupModules(scene, "ScriptEngines");
|
//m_moduleLoader.PickupModules(scene, "ScriptEngines");
|
||||||
//m_moduleLoader.LoadRegionModules(Path.Combine("ScriptEngines", m_scriptEngine), scene);
|
//m_moduleLoader.LoadRegionModules(Path.Combine("ScriptEngines", m_scriptEngine), scene);
|
||||||
m_log.Info("[MODULES]: Loading scripting engine modules");
|
|
||||||
foreach (string module in m_scriptEngine.Split(','))
|
if (string.IsNullOrEmpty(m_scriptEngine))
|
||||||
{
|
{
|
||||||
string mod = module.Trim(" \t".ToCharArray()); // Clean up name
|
m_log.Info("[MODULES]: No script engien module specified");
|
||||||
m_log.Info("[MODULES]: Loading scripting engine: " + mod);
|
}
|
||||||
try
|
else
|
||||||
|
{
|
||||||
|
m_log.Info("[MODULES]: Loading scripting engine modules");
|
||||||
|
foreach (string module in m_scriptEngine.Split(','))
|
||||||
{
|
{
|
||||||
m_moduleLoader.LoadRegionModules(Path.Combine("ScriptEngines", mod), scene);
|
string mod = module.Trim(" \t".ToCharArray()); // Clean up name
|
||||||
}
|
m_log.Info("[MODULES]: Loading scripting engine: " + mod);
|
||||||
catch (Exception ex)
|
try
|
||||||
{
|
{
|
||||||
m_log.Error("[MODULES]: Failed to load script engine: " + ex.ToString());
|
m_moduleLoader.LoadRegionModules(Path.Combine("ScriptEngines", mod), scene);
|
||||||
|
}
|
||||||
|
catch (Exception ex)
|
||||||
|
{
|
||||||
|
m_log.Error("[MODULES]: Failed to load script engine: " + ex.ToString());
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -106,6 +106,14 @@ namespace OpenSim.Region.Physics.Manager
|
||||||
|
|
||||||
private void AddPlugin(string FileName)
|
private void AddPlugin(string FileName)
|
||||||
{
|
{
|
||||||
|
// TODO / NOTE
|
||||||
|
// The assembly named 'OpenSim.Region.Physics.BasicPhysicsPlugin' was loaded from
|
||||||
|
// 'file:///C:/OpenSim/trunk2/bin/Physics/OpenSim.Region.Physics.BasicPhysicsPlugin.dll'
|
||||||
|
// using the LoadFrom context. The use of this context can result in unexpected behavior
|
||||||
|
// for serialization, casting and dependency resolution. In almost all cases, it is recommended
|
||||||
|
// that the LoadFrom context be avoided. This can be done by installing assemblies in the
|
||||||
|
// Global Assembly Cache or in the ApplicationBase directory and using Assembly.
|
||||||
|
// Load when explicitly loading assemblies.
|
||||||
Assembly pluginAssembly = Assembly.LoadFrom(FileName);
|
Assembly pluginAssembly = Assembly.LoadFrom(FileName);
|
||||||
|
|
||||||
foreach (Type pluginType in pluginAssembly.GetTypes())
|
foreach (Type pluginType in pluginAssembly.GetTypes())
|
||||||
|
|
Loading…
Reference in New Issue