From f19199cf4a6ef9cdcfbdbff3a1f604f595216f65 Mon Sep 17 00:00:00 2001 From: Diva Canto Date: Tue, 21 Jun 2016 20:28:25 -0700 Subject: Mantis #7932: Some objects were being serialized with PCode=9 and State != 0 (meaning attachments). That should never happen. --- .../Region/Framework/Scenes/Serialization/SceneObjectSerializer.cs | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'OpenSim/Region/Framework/Scenes/Serialization') diff --git a/OpenSim/Region/Framework/Scenes/Serialization/SceneObjectSerializer.cs b/OpenSim/Region/Framework/Scenes/Serialization/SceneObjectSerializer.cs index 7d3a168..795da3f 100644 --- a/OpenSim/Region/Framework/Scenes/Serialization/SceneObjectSerializer.cs +++ b/OpenSim/Region/Framework/Scenes/Serialization/SceneObjectSerializer.cs @@ -1671,7 +1671,8 @@ namespace OpenSim.Region.Framework.Scenes.Serialization writer.WriteElementString("ProfileBegin", shp.ProfileBegin.ToString()); writer.WriteElementString("ProfileEnd", shp.ProfileEnd.ToString()); writer.WriteElementString("ProfileHollow", shp.ProfileHollow.ToString()); - writer.WriteElementString("State", shp.State.ToString()); + // There's no such thing as a primitive with state != 0 (attachment) + writer.WriteElementString("State", (shp.PCode == (byte)PCodeEnum.Primitive ? "0" : shp.State.ToString())); writer.WriteElementString("LastAttachPoint", shp.LastAttachPoint.ToString()); WriteFlags(writer, "ProfileShape", shp.ProfileShape.ToString(), options); @@ -1799,6 +1800,10 @@ namespace OpenSim.Region.Framework.Scenes.Serialization reader.ReadEndElement(); // Shape + if (shape.PCode == (byte)PCodeEnum.Primitive && shape.State != 0) + // This should not happen! + shape.State = 0; + errorNodeNames = internalErrorNodeNames; return shape; -- cgit v1.1