Index: Radegast/GUI/Consoles/ObjectsConsole.cs =================================================================== --- Radegast/GUI/Consoles/ObjectsConsole.cs (revision 520) +++ Radegast/GUI/Consoles/ObjectsConsole.cs (working copy) @@ -513,7 +513,32 @@ else { name = prim.Properties.Name; - ownerName = instance.getAvatarName(prim.Properties.OwnerID); + // prim.Properties.GroupID is the actual group when group owned, not prim.GroupID + if (UUID.Zero == prim.Properties.OwnerID && + PrimFlags.ObjectGroupOwned == (prim.Flags & PrimFlags.ObjectGroupOwned) && + UUID.Zero != prim.Properties.GroupID) + { + System.Threading.AutoResetEvent nameReceivedSignal = new System.Threading.AutoResetEvent(false); + EventHandler cbGroupName = new EventHandler( + delegate(object sender, GroupNamesEventArgs e) + { + if (e.GroupNames.ContainsKey(prim.Properties.GroupID)) + { + e.GroupNames.TryGetValue(prim.Properties.GroupID, out ownerName); + if (string.IsNullOrEmpty(ownerName)) + ownerName = "Loading..."; + if (null != nameReceivedSignal) + nameReceivedSignal.Set(); + } + }); + client.Groups.GroupNamesReply += cbGroupName; + client.Groups.RequestGroupName(prim.Properties.GroupID); + nameReceivedSignal.WaitOne(5000); + nameReceivedSignal.Close(); + client.Groups.GroupNamesReply -= cbGroupName; + } + else + ownerName = instance.getAvatarName(prim.Properties.OwnerID); } return String.Format("{0} ({1}m) owned by {2}", name, distance, ownerName);