From c77c688a50149ee4c114eaaac38e86c9a072f804 Mon Sep 17 00:00:00 2001 From: gareth Date: Sun, 6 May 2007 18:05:51 +0000 Subject: [PATCH] Added missing build files Added sanity checking for config options in OpenSimMain.cs --- OpenSim.Framework/OpenSim.Framework.dll.build | 1 - .../OpenSim.RegionServer.dll.build | 1 + OpenSim.RegionServer/OpenSimMain.cs | 99 ++++++++++++------- OpenSim.build | 93 +++++++++-------- 4 files changed, 115 insertions(+), 79 deletions(-) diff --git a/OpenSim.Framework/OpenSim.Framework.dll.build b/OpenSim.Framework/OpenSim.Framework.dll.build index aa405fb290..69ea10a393 100644 --- a/OpenSim.Framework/OpenSim.Framework.dll.build +++ b/OpenSim.Framework/OpenSim.Framework.dll.build @@ -22,7 +22,6 @@ - diff --git a/OpenSim.RegionServer/OpenSim.RegionServer.dll.build b/OpenSim.RegionServer/OpenSim.RegionServer.dll.build index d41d6643bb..871d639d3a 100644 --- a/OpenSim.RegionServer/OpenSim.RegionServer.dll.build +++ b/OpenSim.RegionServer/OpenSim.RegionServer.dll.build @@ -19,6 +19,7 @@ + diff --git a/OpenSim.RegionServer/OpenSimMain.cs b/OpenSim.RegionServer/OpenSimMain.cs index 61441b2f4d..8414307dfa 100644 --- a/OpenSim.RegionServer/OpenSimMain.cs +++ b/OpenSim.RegionServer/OpenSimMain.cs @@ -347,85 +347,106 @@ namespace OpenSim // SandBoxMode string attri = ""; attri = configData.GetAttribute("SandBox"); - if (attri == "") + if ((attri == "")^(attri == "false")) { this.m_sandbox = false; configData.SetAttribute("SandBox", "false"); } - else + else if (attri == "true") { this.m_sandbox = Convert.ToBoolean(attri); - } + } else { + m_console.WriteLine("Main.cs: SetupFromConfig() - Invalid value for SandBox attribute, terminating"); + Environment.Exit(1); + } // LoginServer attri = ""; attri = configData.GetAttribute("LoginServer"); - if (attri == "") - { + if ((attri == "")^(attri == "false")) + { this.m_loginserver = false; configData.SetAttribute("LoginServer", "false"); } - else + else if (attri == "true") { this.m_loginserver = Convert.ToBoolean(attri); - } + } else { + m_console.WriteLine("Main.cs: SetupFromConfig() - Invalid value for LoginServer attribute, terminating"); + Environment.Exit(1); + } // Sandbox User accounts attri = ""; attri = configData.GetAttribute("UserAccount"); - if (attri == "") - { + if ((attri == "")^(attri == "false")) + { this.user_accounts = false; configData.SetAttribute("UserAccounts", "false"); } - else + else if (attri == "true") { this.user_accounts = Convert.ToBoolean(attri); - } + } else { + m_console.WriteLine("Main.cs: SetupFromConfig() - Invalid value for UserAccount attribute, terminating"); + Environment.Exit(1); + } // Grid mode hack to use local asset server attri = ""; attri = configData.GetAttribute("LocalAssets"); - if (attri == "") - { + if ((attri == "")^(attri == "false")) + { this.gridLocalAsset = false; configData.SetAttribute("LocalAssets", "false"); } - else + else if (attri == "true") { this.gridLocalAsset = Convert.ToBoolean(attri); - } + } else { + m_console.WriteLine("Main.cs: SetupFromConfig() - Invalid value for LocalAssets attribute, terminating"); + } - // Grid mode hack to use local asset server - attri = ""; + + attri = ""; attri = configData.GetAttribute("PhysicsEngine"); - if (attri == "") - { - this.m_physicsEngine = "basicphysics"; - configData.SetAttribute("PhysicsEngine", "basicphysics"); - } - else - { - this.m_physicsEngine = attri; - if ((attri == "RealPhysX") || (attri == "OpenDynamicsEngine")) - { - OpenSim.world.Avatar.PhysicsEngineFlying = true; - } - else - { - OpenSim.world.Avatar.PhysicsEngineFlying = false; - } - } + switch(attri) { + default: + m_console.WriteLine("Main.cs: SetupFromConfig() - Invalid value for PhysicsEngine attribute, terminating"); + Environment.Exit(1); + break; + + case "": + this.m_physicsEngine = "basicphysics"; + configData.SetAttribute("PhysicsEngine", "basicphysics"); + OpenSim.world.Avatar.PhysicsEngineFlying = false; + break; + + case "RealPhysX": + this.m_physicsEngine = "RealPhysX"; + OpenSim.world.Avatar.PhysicsEngineFlying = true; + break; + + case "OpenDynamicsEngine": + this.m_physicsEngine = "OpenDynamicsEngine"; + OpenSim.world.Avatar.PhysicsEngineFlying = true; + break; + } + configData.Commit(); } catch (Exception e) { Console.WriteLine(e.Message); - } + Console.WriteLine("\nSorry, a fatal error occurred while trying to initialise the configuration data"); + Console.WriteLine("Can not continue starting up"); + Environment.Exit(1); + } } private SimConfig LoadConfigDll(string dllName) { + try { Assembly pluginAssembly = Assembly.LoadFrom(dllName); SimConfig config = null; @@ -449,7 +470,13 @@ namespace OpenSim } } pluginAssembly = null; - return config; + return config; + } catch (Exception e) { + m_console.WriteLine(e.Message + "\nSorry, a fatal error occurred while trying to load the config DLL"); + m_console.WriteLine("Can not continue starting up"); + Environment.Exit(1); + return null; + } } private void OnReceivedData(IAsyncResult result) diff --git a/OpenSim.build b/OpenSim.build index 67b2120da1..e9ba612519 100644 --- a/OpenSim.build +++ b/OpenSim.build @@ -46,31 +46,34 @@ - - - - - - - - - - - - - - - - - - - + + + + - - + + + + + + + + + + + + + + + + + + + + @@ -85,6 +88,9 @@ + + + @@ -109,31 +115,34 @@ - - - - - - - - - - - - - - - - - - - + + + + - - + + + + + + + + + + + + + + + + + + + +