aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/Framework/Scenes/Serialization
diff options
context:
space:
mode:
Diffstat (limited to 'OpenSim/Region/Framework/Scenes/Serialization')
-rw-r--r--OpenSim/Region/Framework/Scenes/Serialization/CoalescedSceneObjectsSerializer.cs47
1 files changed, 29 insertions, 18 deletions
diff --git a/OpenSim/Region/Framework/Scenes/Serialization/CoalescedSceneObjectsSerializer.cs b/OpenSim/Region/Framework/Scenes/Serialization/CoalescedSceneObjectsSerializer.cs
index babcb54..55455cc 100644
--- a/OpenSim/Region/Framework/Scenes/Serialization/CoalescedSceneObjectsSerializer.cs
+++ b/OpenSim/Region/Framework/Scenes/Serialization/CoalescedSceneObjectsSerializer.cs
@@ -117,29 +117,40 @@ namespace OpenSim.Region.Framework.Scenes.Serialization
117 { 117 {
118 using (XmlTextReader reader = new XmlTextReader(sr)) 118 using (XmlTextReader reader = new XmlTextReader(sr))
119 { 119 {
120 reader.Read(); 120 try
121 if (reader.Name != "CoalescedObject")
122 { 121 {
123// m_log.DebugFormat( 122 reader.Read();
124// "[COALESCED SCENE OBJECTS SERIALIZER]: TryFromXml() root element was {0} so returning false", 123 if (reader.Name != "CoalescedObject")
125// reader.Name); 124 {
125 // m_log.DebugFormat(
126 // "[COALESCED SCENE OBJECTS SERIALIZER]: TryFromXml() root element was {0} so returning false",
127 // reader.Name);
128
129 return false;
130 }
126 131
127 return false; 132 coa = new CoalescedSceneObjects(UUID.Zero);
128 } 133 reader.Read();
129 134
130 coa = new CoalescedSceneObjects(UUID.Zero); 135 while (reader.NodeType != XmlNodeType.EndElement && reader.Name != "CoalescedObject")
131 reader.Read();
132
133 while (reader.NodeType != XmlNodeType.EndElement && reader.Name != "CoalescedObject")
134 {
135 if (reader.Name == "SceneObjectGroup")
136 { 136 {
137 string soXml = reader.ReadOuterXml(); 137 if (reader.Name == "SceneObjectGroup")
138 coa.Add(SceneObjectSerializer.FromOriginalXmlFormat(soXml)); 138 {
139 string soXml = reader.ReadOuterXml();
140 coa.Add(SceneObjectSerializer.FromOriginalXmlFormat(soXml));
141 }
139 } 142 }
143
144 reader.ReadEndElement(); // CoalescedObject
140 } 145 }
141 146 catch (Exception e)
142 reader.ReadEndElement(); // CoalescedObject 147 {
148 m_log.ErrorFormat(
149 "[COALESCED SCENE OBJECTS SERIALIZER]: Deserialization of xml failed with {0} {1}",
150 e.Message, e.StackTrace);
151
152 return false;
153 }
143 } 154 }
144 } 155 }
145 156