aboutsummaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
authorJustin Clark-Casey (justincc)2011-09-05 22:55:48 +0100
committerJustin Clark-Casey (justincc)2011-09-05 22:55:48 +0100
commit5e579b71fdd51fc840ddbece99322e1f9c9be805 (patch)
tree294a6cb630e3a490e91fc9418933c86e04c43b3c
parentFixed BulletSim config files for Linux *.so libraries. (diff)
downloadopensim-SC-5e579b71fdd51fc840ddbece99322e1f9c9be805.zip
opensim-SC-5e579b71fdd51fc840ddbece99322e1f9c9be805.tar.gz
opensim-SC-5e579b71fdd51fc840ddbece99322e1f9c9be805.tar.bz2
opensim-SC-5e579b71fdd51fc840ddbece99322e1f9c9be805.tar.xz
Allow the HGInventoryBroker to set the UserManager when it instantiates a RemoteXInventoryServiceConnector for a visiting HG user.
Not doing this causes NREs whenever that user tries to access inventory when Hypergrid is turned on since the Remote connector does not have a scene (which is only used to fetch the UserManager) Aims to address http://opensimulator.org/mantis/view.php?id=5669
-rw-r--r--OpenSim/Region/CoreModules/ServiceConnectorsOut/Inventory/HGInventoryBroker.cs11
-rw-r--r--OpenSim/Region/CoreModules/ServiceConnectorsOut/Inventory/RemoteXInventoryServiceConnector.cs7
2 files changed, 15 insertions, 3 deletions
diff --git a/OpenSim/Region/CoreModules/ServiceConnectorsOut/Inventory/HGInventoryBroker.cs b/OpenSim/Region/CoreModules/ServiceConnectorsOut/Inventory/HGInventoryBroker.cs
index 72ae3363..f9e4bb9 100644
--- a/OpenSim/Region/CoreModules/ServiceConnectorsOut/Inventory/HGInventoryBroker.cs
+++ b/OpenSim/Region/CoreModules/ServiceConnectorsOut/Inventory/HGInventoryBroker.cs
@@ -572,14 +572,21 @@ namespace OpenSim.Region.CoreModules.ServiceConnectorsOut.Inventory
572 string connectorType = new HeloServicesConnector(url).Helo(); 572 string connectorType = new HeloServicesConnector(url).Helo();
573 m_log.DebugFormat("[HG INVENTORY SERVICE]: HELO returned {0}", connectorType); 573 m_log.DebugFormat("[HG INVENTORY SERVICE]: HELO returned {0}", connectorType);
574 if (connectorType == "opensim-simian") 574 if (connectorType == "opensim-simian")
575 {
575 connector = new SimianInventoryServiceConnector(url); 576 connector = new SimianInventoryServiceConnector(url);
577 }
576 else 578 else
577 connector = new RemoteXInventoryServicesConnector(url); 579 {
580 RemoteXInventoryServicesConnector rxisc = new RemoteXInventoryServicesConnector(url);
581 rxisc.UserManager = UserManagementModule;
582 connector = rxisc;
583 }
584
578 m_connectors.Add(url, connector); 585 m_connectors.Add(url, connector);
579 } 586 }
580 } 587 }
588
581 return connector; 589 return connector;
582 } 590 }
583
584 } 591 }
585} 592}
diff --git a/OpenSim/Region/CoreModules/ServiceConnectorsOut/Inventory/RemoteXInventoryServiceConnector.cs b/OpenSim/Region/CoreModules/ServiceConnectorsOut/Inventory/RemoteXInventoryServiceConnector.cs
index 8f1f257..4a3ccc5 100644
--- a/OpenSim/Region/CoreModules/ServiceConnectorsOut/Inventory/RemoteXInventoryServiceConnector.cs
+++ b/OpenSim/Region/CoreModules/ServiceConnectorsOut/Inventory/RemoteXInventoryServiceConnector.cs
@@ -50,7 +50,7 @@ namespace OpenSim.Region.CoreModules.ServiceConnectorsOut.Inventory
50 private XInventoryServicesConnector m_RemoteConnector; 50 private XInventoryServicesConnector m_RemoteConnector;
51 51
52 private IUserManagement m_UserManager; 52 private IUserManagement m_UserManager;
53 private IUserManagement UserManager 53 public IUserManagement UserManager
54 { 54 {
55 get 55 get
56 { 56 {
@@ -60,6 +60,11 @@ namespace OpenSim.Region.CoreModules.ServiceConnectorsOut.Inventory
60 } 60 }
61 return m_UserManager; 61 return m_UserManager;
62 } 62 }
63
64 set
65 {
66 m_UserManager = value;
67 }
63 } 68 }
64 69
65 public Type ReplaceableInterface 70 public Type ReplaceableInterface