diff options
author | Justin Clark-Casey (justincc) | 2015-01-22 23:12:10 +0000 |
---|---|---|
committer | Justin Clark-Casey (justincc) | 2015-01-23 00:27:57 +0000 |
commit | d0a2ea0857c1342a42db31bce282c62c88c57e55 (patch) | |
tree | b727ce53574216d12cc6549e74982ce5de850654 /OpenSim/Region/Framework/Scenes/SceneObjectPartInventory.cs | |
parent | Merge branch 'master' of ssh://opensimulator.org/var/git/opensim (diff) | |
download | opensim-SC-d0a2ea0857c1342a42db31bce282c62c88c57e55.zip opensim-SC-d0a2ea0857c1342a42db31bce282c62c88c57e55.tar.gz opensim-SC-d0a2ea0857c1342a42db31bce282c62c88c57e55.tar.bz2 opensim-SC-d0a2ea0857c1342a42db31bce282c62c88c57e55.tar.xz |
Fix regression where the stored state of every second script in an object rezzed from inventory (e.g. attachments) was no longer loaded.
Likely a regression since f132f642 (2014-08-28)
Relates to http://opensimulator.org/mantis/view.php?id=7278
Diffstat (limited to 'OpenSim/Region/Framework/Scenes/SceneObjectPartInventory.cs')
-rw-r--r-- | OpenSim/Region/Framework/Scenes/SceneObjectPartInventory.cs | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/OpenSim/Region/Framework/Scenes/SceneObjectPartInventory.cs b/OpenSim/Region/Framework/Scenes/SceneObjectPartInventory.cs index 578909c..ec39726 100644 --- a/OpenSim/Region/Framework/Scenes/SceneObjectPartInventory.cs +++ b/OpenSim/Region/Framework/Scenes/SceneObjectPartInventory.cs | |||
@@ -400,6 +400,10 @@ namespace OpenSim.Region.Framework.Scenes | |||
400 | 400 | ||
401 | private UUID RestoreSavedScriptState(UUID loadedID, UUID oldID, UUID newID) | 401 | private UUID RestoreSavedScriptState(UUID loadedID, UUID oldID, UUID newID) |
402 | { | 402 | { |
403 | // m_log.DebugFormat( | ||
404 | // "[PRIM INVENTORY]: Restoring scripted state for item {0}, oldID {1}, loadedID {2}", | ||
405 | // newID, oldID, loadedID); | ||
406 | |||
403 | IScriptModule[] engines = m_part.ParentGroup.Scene.RequestModuleInterfaces<IScriptModule>(); | 407 | IScriptModule[] engines = m_part.ParentGroup.Scene.RequestModuleInterfaces<IScriptModule>(); |
404 | if (engines.Length == 0) // No engine at all | 408 | if (engines.Length == 0) // No engine at all |
405 | return oldID; | 409 | return oldID; |
@@ -412,7 +416,7 @@ namespace OpenSim.Region.Framework.Scenes | |||
412 | XmlDocument doc = new XmlDocument(); | 416 | XmlDocument doc = new XmlDocument(); |
413 | 417 | ||
414 | doc.LoadXml(m_part.ParentGroup.m_savedScriptState[stateID]); | 418 | doc.LoadXml(m_part.ParentGroup.m_savedScriptState[stateID]); |
415 | 419 | ||
416 | ////////// CRUFT WARNING /////////////////////////////////// | 420 | ////////// CRUFT WARNING /////////////////////////////////// |
417 | // | 421 | // |
418 | // Old objects will have <ScriptState><State> ... | 422 | // Old objects will have <ScriptState><State> ... |
@@ -442,6 +446,8 @@ namespace OpenSim.Region.Framework.Scenes | |||
442 | // This created document has only the minimun data | 446 | // This created document has only the minimun data |
443 | // necessary for XEngine to parse it successfully | 447 | // necessary for XEngine to parse it successfully |
444 | 448 | ||
449 | // m_log.DebugFormat("[PRIM INVENTORY]: Adding legacy state {0} in {1}", stateID, newID); | ||
450 | |||
445 | m_part.ParentGroup.m_savedScriptState[stateID] = newDoc.OuterXml; | 451 | m_part.ParentGroup.m_savedScriptState[stateID] = newDoc.OuterXml; |
446 | } | 452 | } |
447 | 453 | ||