* Send full inventory folder skeleton to standalone client logins rather than just the root child folders

* This may resolve some current problems with non root child folders on standalone installations.
* A fix for the same problem in grid mode will come soon.
This commit is contained in:
Justin Clarke Casey
2008-03-28 19:35:01 +00:00
parent 35dec2e53a
commit 0a47a75b88
12 changed files with 73 additions and 30 deletions

View File

@@ -42,7 +42,9 @@ namespace OpenSim.Region.Communications.Local
public override void RequestInventoryForUser(LLUUID userID, InventoryFolderInfo folderCallBack,
InventoryItemInfo itemCallBack)
{
List<InventoryFolderBase> folders = RequestFirstLevelFolders(userID);
//List<InventoryFolderBase> folders = RequestFirstLevelFolders(userID);
List<InventoryFolderBase> folders = GetInventorySkeleton(userID);
InventoryFolderImpl rootFolder = null;
//need to make sure we send root folder first

View File

@@ -215,7 +215,8 @@ namespace OpenSim.Region.Communications.Local
// See LoginService
protected override InventoryData GetInventorySkeleton(LLUUID userID)
{
List<InventoryFolderBase> folders = m_Parent.InventoryService.RequestFirstLevelFolders(userID);
List<InventoryFolderBase> folders = m_Parent.InventoryService.GetInventorySkeleton(userID);
//List<InventoryFolderBase> folders = m_Parent.InventoryService.RequestFirstLevelFolders(userID);
if (folders.Count > 0)
{
LLUUID rootID = LLUUID.Zero;

View File

@@ -216,6 +216,14 @@ namespace OpenSim.Region.Communications.OGS1
public void CreateNewUserInventory(LLUUID user)
{
}
// See IInventoryServices
public List<InventoryFolderBase> GetInventorySkeleton(LLUUID userId)
{
m_log.ErrorFormat("[OGS1 INVENTORY SERVICE]: The GetInventorySkeleton() method here should never be called!");
return new List<InventoryFolderBase>();
}
public List<InventoryFolderBase> RequestFirstLevelFolders(LLUUID userID)
{