diff --git a/OpenSim/Region/Communications/Local/LocalInventoryService.cs b/OpenSim/Region/Communications/Local/LocalInventoryService.cs index d4560be639..4ff4e968d7 100644 --- a/OpenSim/Region/Communications/Local/LocalInventoryService.cs +++ b/OpenSim/Region/Communications/Local/LocalInventoryService.cs @@ -48,42 +48,48 @@ namespace OpenSim.Region.Communications.Local { m_log.InfoFormat("[LOCAL INVENTORY SERVICE]: Requesting inventory for user {0}", userID); - List skeletonFolders = GetInventorySkeleton(userID); - if (skeletonFolders == null) - return; - - InventoryFolderImpl rootFolder = null; - List folders = new List(); List items = new List(); - // Need to retrieve the root folder on the first pass - foreach (InventoryFolderBase folder in skeletonFolders) - { - if (folder.ParentID == UUID.Zero) - { - rootFolder = new InventoryFolderImpl(folder); - folders.Add(rootFolder); - items.AddRange(RequestFolderItems(rootFolder.ID)); - break; // Only 1 root folder per user - } - } + List skeletonFolders = GetInventorySkeleton(userID); - if (rootFolder != null) + if (skeletonFolders != null) { - foreach (InventoryFolderBase folder in skeletonFolders) - { - if (folder.ID != rootFolder.ID) - { - folders.Add(new InventoryFolderImpl(folder)); - items.AddRange(RequestFolderItems(folder.ID)); - } - } - } + + InventoryFolderImpl rootFolder = null; - m_log.InfoFormat( - "[LOCAL INVENTORY SERVICE]: Received inventory response for user {0} containing {1} folders and {2} items", - userID, folders.Count, items.Count); + // Need to retrieve the root folder on the first pass + foreach (InventoryFolderBase folder in skeletonFolders) + { + if (folder.ParentID == UUID.Zero) + { + rootFolder = new InventoryFolderImpl(folder); + folders.Add(rootFolder); + items.AddRange(RequestFolderItems(rootFolder.ID)); + break; // Only 1 root folder per user + } + } + + if (rootFolder != null) + { + foreach (InventoryFolderBase folder in skeletonFolders) + { + if (folder.ID != rootFolder.ID) + { + folders.Add(new InventoryFolderImpl(folder)); + items.AddRange(RequestFolderItems(folder.ID)); + } + } + } + + m_log.InfoFormat( + "[LOCAL INVENTORY SERVICE]: Received inventory response for user {0} containing {1} folders and {2} items", + userID, folders.Count, items.Count); + } + else + { + m_log.WarnFormat( "[LOCAL INVENTORY SERVICE]: User {0} inventory not available", userID); + } callback(folders, items); }