mirror of
https://github.com/opensim/opensim.git
synced 2026-08-06 01:06:30 +08:00
useless ms xml things
This commit is contained in:
@@ -132,6 +132,7 @@ namespace OpenSim.Region.Framework.Scenes.Serialization
|
||||
// Quickly check if this is a coalesced object, without fully parsing the XML
|
||||
using (XmlTextReader reader = new XmlTextReader(new StringReader(xml)))
|
||||
{
|
||||
reader.DtdProcessing = DtdProcessing.Ignore;
|
||||
reader.MoveToContent(); // skip possible xml declaration
|
||||
|
||||
if (reader.Name != "CoalescedObject")
|
||||
@@ -196,22 +197,27 @@ namespace OpenSim.Region.Framework.Scenes.Serialization
|
||||
return false;
|
||||
if (data[len - 1] == 0)
|
||||
--len;
|
||||
|
||||
MemoryStream ms;
|
||||
XmlDocument doc;
|
||||
// Quickly check if this is a coalesced object, without fully parsing the XML
|
||||
MemoryStream ms = new MemoryStream(data, 0, len, false);
|
||||
StreamReader sr = new StreamReader(ms, Encoding.UTF8);
|
||||
using (XmlTextReader reader = new XmlTextReader(sr))
|
||||
{
|
||||
reader.MoveToContent(); // skip possible xml declaration
|
||||
|
||||
if (reader.Name != "CoalescedObject")
|
||||
{
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
XmlDocument doc = new XmlDocument();
|
||||
using (ms = new MemoryStream(data, 0, len, false))
|
||||
{
|
||||
using(StreamReader sr = new StreamReader(ms, Encoding.UTF8))
|
||||
{
|
||||
using (XmlTextReader reader = new XmlTextReader(sr))
|
||||
{
|
||||
reader.DtdProcessing = DtdProcessing.Ignore;
|
||||
reader.MoveToContent(); // skip possible xml declaration
|
||||
if (reader.Name != "CoalescedObject")
|
||||
return false;
|
||||
}
|
||||
}
|
||||
ms.Seek(0, SeekOrigin.Begin);
|
||||
|
||||
doc = new XmlDocument();
|
||||
doc.Load(ms);
|
||||
}
|
||||
|
||||
XmlElement e = (XmlElement)doc.SelectSingleNode("/CoalescedObject");
|
||||
if (e == null)
|
||||
|
||||
@@ -63,7 +63,7 @@ namespace OpenSim.Region.Framework.Scenes.Serialization
|
||||
string fixedData = ExternalRepresentationUtils.SanitizeXml(xmlData);
|
||||
using (XmlTextReader wrappedReader = new XmlTextReader(fixedData, XmlNodeType.Element, null))
|
||||
{
|
||||
using (XmlReader reader = XmlReader.Create(wrappedReader, new XmlReaderSettings() { IgnoreWhitespace = true, ConformanceLevel = ConformanceLevel.Fragment }))
|
||||
using (XmlReader reader = XmlReader.Create(wrappedReader, new XmlReaderSettings() { IgnoreWhitespace = true, ConformanceLevel = ConformanceLevel.Fragment, DtdProcessing = DtdProcessing.Ignore }))
|
||||
{
|
||||
try
|
||||
{
|
||||
@@ -78,7 +78,7 @@ namespace OpenSim.Region.Framework.Scenes.Serialization
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
public static SceneObjectGroup FromOriginalXmlData(byte[] data)
|
||||
{
|
||||
int len = data.Length;
|
||||
@@ -104,6 +104,7 @@ namespace OpenSim.Region.Framework.Scenes.Serialization
|
||||
}
|
||||
}
|
||||
}
|
||||
*/
|
||||
|
||||
/// <summary>
|
||||
/// Deserialize a scene object from the original xml format
|
||||
@@ -295,7 +296,10 @@ namespace OpenSim.Region.Framework.Scenes.Serialization
|
||||
using(StringReader sr = new StringReader(parts[0].OuterXml))
|
||||
{
|
||||
using(XmlTextReader reader = new XmlTextReader(sr))
|
||||
{
|
||||
reader.DtdProcessing = DtdProcessing.Ignore;
|
||||
sceneObject = new SceneObjectGroup(SceneObjectPart.FromXml(reader));
|
||||
}
|
||||
}
|
||||
|
||||
// Then deal with the rest
|
||||
@@ -306,6 +310,7 @@ namespace OpenSim.Region.Framework.Scenes.Serialization
|
||||
{
|
||||
using(XmlTextReader reader = new XmlTextReader(sr))
|
||||
{
|
||||
reader.DtdProcessing = DtdProcessing.Ignore;
|
||||
part = SceneObjectPart.FromXml(reader);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -55,6 +55,7 @@ namespace OpenSim.Region.Framework.Scenes.Serialization
|
||||
{
|
||||
using(XmlTextReader reader = new XmlTextReader(fileName))
|
||||
{
|
||||
reader.DtdProcessing = DtdProcessing.Ignore;
|
||||
reader.WhitespaceHandling = WhitespaceHandling.None;
|
||||
|
||||
doc.Load(reader);
|
||||
@@ -236,7 +237,9 @@ namespace OpenSim.Region.Framework.Scenes.Serialization
|
||||
/// <param name="fileName"></param>
|
||||
public static void LoadPrimsFromXml2(Scene scene, string fileName)
|
||||
{
|
||||
LoadPrimsFromXml2(scene, new XmlTextReader(fileName), false);
|
||||
var xr = new XmlTextReader(fileName);
|
||||
xr.DtdProcessing = DtdProcessing.Ignore;
|
||||
LoadPrimsFromXml2(scene, xr , false);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
@@ -247,7 +250,9 @@ namespace OpenSim.Region.Framework.Scenes.Serialization
|
||||
/// <param name="startScripts"></param>
|
||||
public static void LoadPrimsFromXml2(Scene scene, TextReader reader, bool startScripts)
|
||||
{
|
||||
LoadPrimsFromXml2(scene, new XmlTextReader(reader), startScripts);
|
||||
var xr = new XmlTextReader(reader);
|
||||
xr.DtdProcessing = DtdProcessing.Ignore;
|
||||
LoadPrimsFromXml2(scene, xr, startScripts);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
@@ -258,7 +263,9 @@ namespace OpenSim.Region.Framework.Scenes.Serialization
|
||||
/// <param name="startScripts"></param>
|
||||
protected static void LoadPrimsFromXml2(Scene scene, XmlTextReader reader, bool startScripts)
|
||||
{
|
||||
|
||||
XmlDocument doc = new XmlDocument();
|
||||
reader.DtdProcessing = DtdProcessing.Ignore;
|
||||
reader.WhitespaceHandling = WhitespaceHandling.None;
|
||||
doc.Load(reader);
|
||||
reader.Close();
|
||||
|
||||
Reference in New Issue
Block a user