From cb80d8a29c0af24421a51087ddb56ad35a5c49b8 Mon Sep 17 00:00:00 2001 From: Diva Canto Date: Sun, 9 Dec 2012 15:31:11 -0800 Subject: UserManagementModule: search the local cache for names too. Inventory transfers: don't do async on asset transfers or now. --- .../Framework/UserManagement/UserManagementModule.cs | 10 ++++++++++ OpenSim/Region/Framework/Scenes/Scene.Inventory.cs | 2 +- 2 files changed, 11 insertions(+), 1 deletion(-) (limited to 'OpenSim/Region') diff --git a/OpenSim/Region/CoreModules/Framework/UserManagement/UserManagementModule.cs b/OpenSim/Region/CoreModules/Framework/UserManagement/UserManagementModule.cs index 86e7004..77e8b00 100644 --- a/OpenSim/Region/CoreModules/Framework/UserManagement/UserManagementModule.cs +++ b/OpenSim/Region/CoreModules/Framework/UserManagement/UserManagementModule.cs @@ -181,6 +181,7 @@ namespace OpenSim.Region.CoreModules.Framework.UserManagement m_log.DebugFormat("[USER MANAGEMENT MODULE]: HandleAvatarPickerRequest for {0}", query); + // searhc the user accounts service List accs = m_Scenes[0].UserAccountService.GetUserAccounts(m_Scenes[0].RegionInfo.ScopeID, query); List users = new List(); @@ -196,6 +197,12 @@ namespace OpenSim.Region.CoreModules.Framework.UserManagement } } + // search the local cache + foreach (UserData data in m_UserCache.Values) + if (users.Find(delegate(UserData d) { return d.Id == data.Id; }) == null && + (data.FirstName.StartsWith(query) || data.LastName.StartsWith(query))) + users.Add(data); + AddAdditionalUsers(avatarID, query, users); AvatarPickerReplyPacket replyPacket = (AvatarPickerReplyPacket)PacketPool.Instance.GetPacket(PacketType.AvatarPickerReply); @@ -433,6 +440,9 @@ namespace OpenSim.Region.CoreModules.Framework.UserManagement public void AddUser(UUID uuid, string first, string last, string homeURL) { //m_log.DebugFormat("[USER MANAGEMENT MODULE]: Adding user with id {0}, first {1}, last {2}, url {3}", uuid, first, last, homeURL); + if (homeURL == string.Empty) + return; + AddUser(uuid, homeURL + ";" + first + " " + last); } diff --git a/OpenSim/Region/Framework/Scenes/Scene.Inventory.cs b/OpenSim/Region/Framework/Scenes/Scene.Inventory.cs index ad40d6b..e0f3c99 100644 --- a/OpenSim/Region/Framework/Scenes/Scene.Inventory.cs +++ b/OpenSim/Region/Framework/Scenes/Scene.Inventory.cs @@ -692,7 +692,7 @@ namespace OpenSim.Region.Framework.Scenes { IInventoryAccessModule invAccess = RequestModuleInterface(); if (invAccess != null) - Util.FireAndForget(delegate { invAccess.TransferInventoryAssets(itemCopy, senderId, recipient); }); + invAccess.TransferInventoryAssets(itemCopy, senderId, recipient); } if (!Permissions.BypassPermissions()) -- cgit v1.1