From 0897f39c5283ce60efb2bb0100b33f05dca787aa Mon Sep 17 00:00:00 2001 From: Matt Nadareski Date: Thu, 28 Apr 2016 13:04:32 -0700 Subject: [PATCH] Mono doesn't like a missing DTD --- SabreHelper/RomManipulation.cs | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/SabreHelper/RomManipulation.cs b/SabreHelper/RomManipulation.cs index d1c1c17c..bbcace0d 100644 --- a/SabreHelper/RomManipulation.cs +++ b/SabreHelper/RomManipulation.cs @@ -101,13 +101,19 @@ namespace SabreTools.Helper if (IsXmlDat(filename)) { logger.Log("XML DAT detected"); - return new XmlTextReader(filename); + XmlTextReader xtr = new XmlTextReader(filename); + xtr.WhitespaceHandling = WhitespaceHandling.None; + xtr.DtdProcessing = DtdProcessing.Ignore; + return xtr; } else { logger.Log("Non-XML DAT detected"); StringReader sr = new StringReader(Converters.ClrMameProToXML(File.ReadAllLines(filename)).ToString()); - return new XmlTextReader(sr); + XmlTextReader xtr = new XmlTextReader(sr); + xtr.WhitespaceHandling = WhitespaceHandling.None; + xtr.DtdProcessing = DtdProcessing.Ignore; + return xtr; } } @@ -219,7 +225,6 @@ namespace SabreTools.Helper { List roms = new List(); XmlTextReader xtr = GetXmlTextReader(filename, logger); - xtr.WhitespaceHandling = WhitespaceHandling.None; bool superdat = false, shouldbreak = false; string parent = ""; if (xtr != null) @@ -357,7 +362,6 @@ namespace SabreTools.Helper public static Dictionary> ParseDict(string filename, int sysid, int srcid, Dictionary> dict, Logger logger) { XmlTextReader xtr = GetXmlTextReader(filename, logger); - xtr.WhitespaceHandling = WhitespaceHandling.None; bool superdat = false, shouldbreak = false; string parent = ""; if (xtr != null)