aboutsummaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
authorJustin Clark-Casey (justincc)2015-02-11 00:53:56 +0000
committerJustin Clark-Casey (justincc)2015-02-11 00:53:56 +0000
commitdd6f560c05caafed740de037eb2b76fcf3924a4a (patch)
tree8cb45b89fa760c6f259a83bf00a3409e3e0b57c0
parentSomewhat naive implementation of RotationalVelocity setter for ODE. Enables l... (diff)
downloadopensim-SC_OLD-dd6f560c05caafed740de037eb2b76fcf3924a4a.zip
opensim-SC_OLD-dd6f560c05caafed740de037eb2b76fcf3924a4a.tar.gz
opensim-SC_OLD-dd6f560c05caafed740de037eb2b76fcf3924a4a.tar.bz2
opensim-SC_OLD-dd6f560c05caafed740de037eb2b76fcf3924a4a.tar.xz
If serialized scene object XML has a SavedScriptState with no UUID, then read past the innerXML instead of wrongly continously looping on the same element.
Addresses http://opensimulator.org/mantis/view.php?id=7437
-rw-r--r--OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs6
1 files changed, 5 insertions, 1 deletions
diff --git a/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs b/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs
index 20fe3ce..0a1a226 100644
--- a/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs
+++ b/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs
@@ -924,13 +924,17 @@ namespace OpenSim.Region.Framework.Scenes
924 924
925 string uuid = reader.GetAttribute("UUID"); 925 string uuid = reader.GetAttribute("UUID");
926 926
927 // Even if there is no UUID attribute for some strange reason, we must always read the inner XML
928 // so we don't continually keep checking the same SavedScriptedState element.
929 string innerXml = reader.ReadInnerXml();
930
927 if (uuid != null) 931 if (uuid != null)
928 { 932 {
929// m_log.DebugFormat("[SCENE OBJECT GROUP]: Found state for item ID {0} in object {1}", uuid, Name); 933// m_log.DebugFormat("[SCENE OBJECT GROUP]: Found state for item ID {0} in object {1}", uuid, Name);
930 934
931 UUID itemid = new UUID(uuid); 935 UUID itemid = new UUID(uuid);
932 if (itemid != UUID.Zero) 936 if (itemid != UUID.Zero)
933 m_savedScriptState[itemid] = reader.ReadInnerXml(); 937 m_savedScriptState[itemid] = innerXml;
934 } 938 }
935 else 939 else
936 { 940 {