aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim
diff options
context:
space:
mode:
authoropensim mirror account2010-10-19 14:40:08 -0700
committeropensim mirror account2010-10-19 14:40:08 -0700
commit5110366baf4a475edf0d29cc246330a2dcf29c90 (patch)
treec0c32e9d37e42fbfe7d758d7ab8769eb36f9138a /OpenSim
parentMerge branch 'master' of /var/git/opensim/ (diff)
parentAdded code to quaternion deserialization to try to cope with an exception see... (diff)
downloadopensim-SC_OLD-5110366baf4a475edf0d29cc246330a2dcf29c90.zip
opensim-SC_OLD-5110366baf4a475edf0d29cc246330a2dcf29c90.tar.gz
opensim-SC_OLD-5110366baf4a475edf0d29cc246330a2dcf29c90.tar.bz2
opensim-SC_OLD-5110366baf4a475edf0d29cc246330a2dcf29c90.tar.xz
Merge branch 'master' of /var/git/opensim/
Diffstat (limited to 'OpenSim')
-rw-r--r--OpenSim/Region/Framework/Scenes/Serialization/SceneObjectSerializer.cs19
1 files changed, 15 insertions, 4 deletions
diff --git a/OpenSim/Region/Framework/Scenes/Serialization/SceneObjectSerializer.cs b/OpenSim/Region/Framework/Scenes/Serialization/SceneObjectSerializer.cs
index b6aa31b..3a48299 100644
--- a/OpenSim/Region/Framework/Scenes/Serialization/SceneObjectSerializer.cs
+++ b/OpenSim/Region/Framework/Scenes/Serialization/SceneObjectSerializer.cs
@@ -1438,10 +1438,21 @@ namespace OpenSim.Region.Framework.Scenes.Serialization
1438 Quaternion quat; 1438 Quaternion quat;
1439 1439
1440 reader.ReadStartElement(name); 1440 reader.ReadStartElement(name);
1441 quat.X = reader.ReadElementContentAsFloat("X", String.Empty); 1441 if (reader.Name == "X") // assume X, Y, Z, W order
1442 quat.Y = reader.ReadElementContentAsFloat("Y", String.Empty); 1442 {
1443 quat.Z = reader.ReadElementContentAsFloat("Z", String.Empty); 1443 quat.X = reader.ReadElementContentAsFloat("X", String.Empty);
1444 quat.W = reader.ReadElementContentAsFloat("W", String.Empty); 1444 quat.Y = reader.ReadElementContentAsFloat("Y", String.Empty);
1445 quat.Z = reader.ReadElementContentAsFloat("Z", String.Empty);
1446 quat.W = reader.ReadElementContentAsFloat("W", String.Empty);
1447 }
1448 else // assume w, x, y, z
1449 {
1450 quat.W = reader.ReadElementContentAsFloat("w", String.Empty);
1451 quat.X = reader.ReadElementContentAsFloat("x", String.Empty);
1452 quat.Y = reader.ReadElementContentAsFloat("y", String.Empty);
1453 quat.Z = reader.ReadElementContentAsFloat("z", String.Empty);
1454 }
1455
1445 reader.ReadEndElement(); 1456 reader.ReadEndElement();
1446 1457
1447 return quat; 1458 return quat;