diff options
author | Melanie | 2010-11-16 21:01:56 +0000 |
---|---|---|
committer | Melanie | 2010-11-16 21:01:56 +0000 |
commit | 7bb005b0d1a5ae63ca94a3a3f8ad98e0388ea76b (patch) | |
tree | b73a2aa9f04e9c34281fb38512da3eb800396769 /OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs | |
parent | Fix osTeleportAgent for hypergrid destinations. (diff) | |
download | opensim-SC_OLD-7bb005b0d1a5ae63ca94a3a3f8ad98e0388ea76b.zip opensim-SC_OLD-7bb005b0d1a5ae63ca94a3a3f8ad98e0388ea76b.tar.gz opensim-SC_OLD-7bb005b0d1a5ae63ca94a3a3f8ad98e0388ea76b.tar.bz2 opensim-SC_OLD-7bb005b0d1a5ae63ca94a3a3f8ad98e0388ea76b.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/Framework/Scenes/SceneObjectGroup.cs')
-rw-r--r-- | OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs b/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs index 5f00f84..c2810b2 100644 --- a/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs +++ b/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs | |||
@@ -491,13 +491,15 @@ namespace OpenSim.Region.Framework.Scenes | |||
491 | XmlNodeList nodes = doc.GetElementsByTagName("SavedScriptState"); | 491 | XmlNodeList nodes = doc.GetElementsByTagName("SavedScriptState"); |
492 | if (nodes.Count > 0) | 492 | if (nodes.Count > 0) |
493 | { | 493 | { |
494 | m_savedScriptState = new Dictionary<UUID, string>(); | 494 | if (m_savedScriptState == null) |
495 | m_savedScriptState = new Dictionary<UUID, string>(); | ||
495 | foreach (XmlNode node in nodes) | 496 | foreach (XmlNode node in nodes) |
496 | { | 497 | { |
497 | if (node.Attributes["UUID"] != null) | 498 | if (node.Attributes["UUID"] != null) |
498 | { | 499 | { |
499 | UUID itemid = new UUID(node.Attributes["UUID"].Value); | 500 | UUID itemid = new UUID(node.Attributes["UUID"].Value); |
500 | m_savedScriptState.Add(itemid, node.InnerXml); | 501 | if (itemid != UUID.Zero) |
502 | m_savedScriptState[itemid] = node.InnerXml; | ||
501 | } | 503 | } |
502 | } | 504 | } |
503 | } | 505 | } |