diff --git a/OpenSim/Framework/Console/ConsoleBase.cs b/OpenSim/Framework/Console/ConsoleBase.cs index 5d8e5b963a..c813e91d30 100644 --- a/OpenSim/Framework/Console/ConsoleBase.cs +++ b/OpenSim/Framework/Console/ConsoleBase.cs @@ -230,7 +230,14 @@ namespace OpenSim.Framework.Console { try { - return System.Console.ReadLine(); + string line = System.Console.ReadLine(); + while(line == null) + { + + line = System.Console.ReadLine(); + } + + return line; } catch (Exception e) { @@ -357,7 +364,8 @@ namespace OpenSim.Framework.Console public void Prompt() { string tempstr = CmdPrompt(m_componentName + "# "); - RunCommand(tempstr); + RunCommand(tempstr); + } public void RunCommand(string cmdline) diff --git a/OpenSim/Region/Physics/Manager/PhysicsPluginManager.cs b/OpenSim/Region/Physics/Manager/PhysicsPluginManager.cs index 6a71581125..4927cc5df5 100644 --- a/OpenSim/Region/Physics/Manager/PhysicsPluginManager.cs +++ b/OpenSim/Region/Physics/Manager/PhysicsPluginManager.cs @@ -130,8 +130,11 @@ namespace OpenSim.Region.Physics.Manager IPhysicsPlugin plug = (IPhysicsPlugin) Activator.CreateInstance(pluginAssembly.GetType(pluginType.ToString())); plug.Init(); - _PhysPlugins.Add(plug.GetName(), plug); - m_log.Info("[PHYSICS]: Added physics engine: " + plug.GetName()); + if(!_PhysPlugins.ContainsKey(plug.GetName())) + { + _PhysPlugins.Add(plug.GetName(), plug); + m_log.Info("[PHYSICS]: Added physics engine: " + plug.GetName()); + } } Type meshTypeInterface = pluginType.GetInterface("IMeshingPlugin", true); @@ -140,8 +143,11 @@ namespace OpenSim.Region.Physics.Manager { IMeshingPlugin plug = (IMeshingPlugin) Activator.CreateInstance(pluginAssembly.GetType(pluginType.ToString())); - _MeshPlugins.Add(plug.GetName(), plug); - m_log.Info("[PHYSICS]: Added meshing engine: " + plug.GetName()); + if(!_MeshPlugins.ContainsKey(plug.GetName())) + { + _MeshPlugins.Add(plug.GetName(), plug); + m_log.Info("[PHYSICS]: Added meshing engine: " + plug.GetName()); + } } physTypeInterface = null;