diff options
Diffstat (limited to 'OpenSim/Region/Framework')
-rw-r--r-- | OpenSim/Region/Framework/Scenes/Scene.PacketHandlers.cs | 9 | ||||
-rw-r--r-- | OpenSim/Region/Framework/Scenes/SceneObjectPart.cs | 3 |
2 files changed, 4 insertions, 8 deletions
diff --git a/OpenSim/Region/Framework/Scenes/Scene.PacketHandlers.cs b/OpenSim/Region/Framework/Scenes/Scene.PacketHandlers.cs index 998c19e..cddf818 100644 --- a/OpenSim/Region/Framework/Scenes/Scene.PacketHandlers.cs +++ b/OpenSim/Region/Framework/Scenes/Scene.PacketHandlers.cs | |||
@@ -244,25 +244,20 @@ namespace OpenSim.Region.Framework.Scenes | |||
244 | if (part.ParentGroup.RootPart.LocalId != part.LocalId) | 244 | if (part.ParentGroup.RootPart.LocalId != part.LocalId) |
245 | return; | 245 | return; |
246 | 246 | ||
247 | bool isAttachment = false; | ||
248 | |||
249 | // This is wrong, wrong, wrong. Selection should not be | 247 | // This is wrong, wrong, wrong. Selection should not be |
250 | // handled by group, but by prim. Legacy cruft. | 248 | // handled by group, but by prim. Legacy cruft. |
251 | // TODO: Make selection flagging per prim! | 249 | // TODO: Make selection flagging per prim! |
252 | // | 250 | // |
253 | part.ParentGroup.IsSelected = false; | 251 | part.ParentGroup.IsSelected = false; |
254 | 252 | ||
255 | if (part.ParentGroup.IsAttachment) | 253 | part.ParentGroup.ScheduleGroupForFullUpdate(); |
256 | isAttachment = true; | ||
257 | else | ||
258 | part.ParentGroup.ScheduleGroupForFullUpdate(); | ||
259 | 254 | ||
260 | // If it's not an attachment, and we are allowed to move it, | 255 | // If it's not an attachment, and we are allowed to move it, |
261 | // then we might have done so. If we moved across a parcel | 256 | // then we might have done so. If we moved across a parcel |
262 | // boundary, we will need to recount prims on the parcels. | 257 | // boundary, we will need to recount prims on the parcels. |
263 | // For attachments, that makes no sense. | 258 | // For attachments, that makes no sense. |
264 | // | 259 | // |
265 | if (!isAttachment) | 260 | if (!part.ParentGroup.IsAttachment) |
266 | { | 261 | { |
267 | if (Permissions.CanEditObject( | 262 | if (Permissions.CanEditObject( |
268 | part.UUID, remoteClient.AgentId) | 263 | part.UUID, remoteClient.AgentId) |
diff --git a/OpenSim/Region/Framework/Scenes/SceneObjectPart.cs b/OpenSim/Region/Framework/Scenes/SceneObjectPart.cs index b3e6b67..9e6c25d 100644 --- a/OpenSim/Region/Framework/Scenes/SceneObjectPart.cs +++ b/OpenSim/Region/Framework/Scenes/SceneObjectPart.cs | |||
@@ -2700,7 +2700,8 @@ namespace OpenSim.Region.Framework.Scenes | |||
2700 | return; | 2700 | return; |
2701 | 2701 | ||
2702 | // This was pulled from SceneViewer. Attachments always receive full updates. | 2702 | // This was pulled from SceneViewer. Attachments always receive full updates. |
2703 | // I could not verify if this is a requirement but this maintains existing behavior | 2703 | // This is needed because otherwise if only the root prim changes position, then |
2704 | // it looks as if the entire object has moved (including the other prims). | ||
2704 | if (ParentGroup.IsAttachment) | 2705 | if (ParentGroup.IsAttachment) |
2705 | { | 2706 | { |
2706 | ScheduleFullUpdate(); | 2707 | ScheduleFullUpdate(); |