aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/CoreModules/Framework
diff options
context:
space:
mode:
authorMelanie2010-11-16 20:44:39 +0100
committerMelanie2010-11-16 20:44:39 +0100
commit4f15b8d4e6be1e1fe88ad32aa43595861d1005ad (patch)
tree5c6dd29543347ea43c2a46658a451b355fdbf528 /OpenSim/Region/CoreModules/Framework
parentCan't detach an object from within the script thread because it will throw. (diff)
downloadopensim-SC_OLD-4f15b8d4e6be1e1fe88ad32aa43595861d1005ad.zip
opensim-SC_OLD-4f15b8d4e6be1e1fe88ad32aa43595861d1005ad.tar.gz
opensim-SC_OLD-4f15b8d4e6be1e1fe88ad32aa43595861d1005ad.tar.bz2
opensim-SC_OLD-4f15b8d4e6be1e1fe88ad32aa43595861d1005ad.tar.xz
Change the way attachments are persisted. Editing a worn attachment will now
save properly, as will the results of a resizer script working. Attachment positions are no longer saved on each move, but instead are saved once on logout. Attachment script states are saved as part of the attachment now when detaching.
Diffstat (limited to 'OpenSim/Region/CoreModules/Framework')
-rw-r--r--OpenSim/Region/CoreModules/Framework/InventoryAccess/InventoryAccessModule.cs21
1 files changed, 13 insertions, 8 deletions
diff --git a/OpenSim/Region/CoreModules/Framework/InventoryAccess/InventoryAccessModule.cs b/OpenSim/Region/CoreModules/Framework/InventoryAccess/InventoryAccessModule.cs
index 0700aa5..2e3db48 100644
--- a/OpenSim/Region/CoreModules/Framework/InventoryAccess/InventoryAccessModule.cs
+++ b/OpenSim/Region/CoreModules/Framework/InventoryAccess/InventoryAccessModule.cs
@@ -719,15 +719,20 @@ namespace OpenSim.Region.CoreModules.Framework.InventoryAccess
719 { 719 {
720 group.RootPart.Flags |= PrimFlags.Phantom; 720 group.RootPart.Flags |= PrimFlags.Phantom;
721 group.RootPart.IsAttachment = true; 721 group.RootPart.IsAttachment = true;
722 }
723 722
724 // If we're rezzing an attachment then don't ask 723 // If we're rezzing an attachment then don't ask
725 // AddNewSceneObject() to update the client since 724 // AddNewSceneObject() to update the client since
726 // we'll be doing that later on. Scheduling more than 725 // we'll be doing that later on. Scheduling more
727 // one full update during the attachment 726 // than one full update during the attachment
728 // process causes some clients to fail to display the 727 // process causes some clients to fail to display
729 // attachment properly. 728 // the attachment properly.
730 m_Scene.AddNewSceneObject(group, true, false); 729 // Also, don't persist attachments.
730 m_Scene.AddNewSceneObject(group, false, false);
731 }
732 else
733 {
734 m_Scene.AddNewSceneObject(group, true, false);
735 }
731 736
732 // if attachment we set it's asset id so object updates 737 // if attachment we set it's asset id so object updates
733 // can reflect that, if not, we set it's position in world. 738 // can reflect that, if not, we set it's position in world.