diff --git a/OpenSim/Region/CoreModules/Avatar/Friends/FriendsModule.cs b/OpenSim/Region/CoreModules/Avatar/Friends/FriendsModule.cs index df0be97a4c..0d9fd9482d 100644 --- a/OpenSim/Region/CoreModules/Avatar/Friends/FriendsModule.cs +++ b/OpenSim/Region/CoreModules/Avatar/Friends/FriendsModule.cs @@ -191,7 +191,17 @@ namespace OpenSim.Region.CoreModules.Avatar.Friends public uint GetFriendPerms(UUID principalID, UUID friendID) { - return 1; + if (!m_Friends.ContainsKey(principalID)) + return 0; + + UserFriendData data = m_Friends[principalID]; + + foreach (FriendInfo fi in data.Friends) + { + if (fi.Friend == friendID.ToString()) + return (uint)fi.TheirFlags; + } + return 0; } private byte[] FailureResult()