-
Notifications
You must be signed in to change notification settings - Fork 15
Open
Description
Starting in version 1.8.27 (and also confirmed in 1.8.28), I'm getting an out of memory exception using the SgmlReader.
Code looks like this:
` var sgml = new SgmlReader { DocType = "HTML", InputStream = new StringReader(input) };
using (var sw = new StringWriter())
{
using (var xw = new XmlTextWriter(sw) { Indentation = 2, Formatting = Formatting.Indented })
{
sgml.Read();
while (!sgml.EOF)
{
xw.WriteNode(sgml, true);
}
}
return sw.ToString();
}
and input is a very simple HTML document that contains a HTML table, form and a validation script like this:
<!DOCTYPE html><html><head><title>Optin Form Preview</title><script type="text/javascript">
String.prototype.trim = function() {
return this.replace(/^\s+|\s+$/g, "");
};
function validate1() {
var isValid = true;
var anyChecked = false;
var errorString = "";
var x = document.SubscribeForm1;
if (x.field1.value.trim() == "") {
errorString = errorString + "Email Address\n";
isValid = false;
}
if (isValid) {
return true;
}
else {
alert("The following fields are required:\n\n" + errorString);
return false;
}
}
</script></head><body><form id="SubscribeForm1" name="SubscribeForm1" method="post" action="https://Mysite.com/Pages/OptIn.aspx?ghff34ghj=6|8653|6|Snyfr&wdmdk=L2agP2OZnCtHYWCPLt2yWQ&sysid=1" onsubmit="return validate1();"><table><tr><td align="left" valign="top">Email Address</td><td align="left" valign="top"><input type="text" name="field1" /></td></tr><tr><td align="left" valign="top">First Name</td><td align="left" valign="top"><input type="text" name="field3" /></td></tr><tr><td align="left" valign="top">Last Name</td><td align="left" valign="top"><input type="text" name="field4" /></td></tr><tr><td align="left" valign="top">Address Line 1</td><td align="left" valign="top"><input type="text" name="field5" /></td></tr><tr><td align="left" valign="top">Address Line 2</td><td align="left" valign="top"><input type="text" name="field6" /></td></tr><tr><td align="left" valign="top">City</td><td align="left" valign="top"><input type="text" name="field7" /></td></tr><tr><td align="left" valign="top">State</td><td align="left" valign="top"><input type="text" name="field8" /></td></tr><tr><td align="left" valign="top">Zip</td><td align="left" valign="top"><input type="text" name="field9" /></td></tr><tr><td align="left" valign="top">Zip+4</td><td align="left" valign="top"><input type="text" name="field10" /></td></tr><tr><td align="left" valign="top">Phone Number</td><td align="left" valign="top"><input type="text" name="field11" /></td></tr><tr><td align="left" valign="top">Mobile Phone Number</td><td align="left" valign="top"><input type="text" name="field12" /></td></tr><tr><td align="left" valign="top">Country</td><td align="left" valign="top"><input type="text" name="field13" /></td></tr><tr><td align="left" valign="top">MR Action Date</td><td align="left" valign="top"><input type="text" name="field28" /></td></tr><tr><td align="left" valign="top">MR Source</td><td align="left" valign="top"><input type="text" name="field29" /></td></tr><tr><td align="left" valign="top">MR Message ID</td><td align="left" valign="top"><input type="text" name="field30" /></td></tr><tr><td align="left" valign="top">via List</td><td align="left" valign="top"><input type="text" name="field31" /></td></tr><tr><td align="left" valign="top">MR Form Title</td><td align="left" valign="top"><input type="text" name="field32" /></td></tr><tr><td align="left" valign="top">Lockerdome Client ID</td><td align="left" valign="top"><input type="text" name="field33" /></td></tr><tr><td align="left" valign="top">EWLMA_Date</td><td align="left" valign="top"><input type="text" name="field34" /></td></tr><tr><td align="left" valign="top">utm_source</td><td align="left" valign="top"><input type="text" name="field35" /></td></tr><tr><td align="left" valign="top">utm_medium</td><td align="left" valign="top"><input type="text" name="field36" /></td></tr><tr><td align="left" valign="top">utm_campaign</td><td align="left" valign="top"><input type="text" name="field37" /></td></tr><tr><td align="left" valign="top">utm_content</td><td align="left" valign="top"><input type="text" name="field38" /></td></tr><tr><td align="left" valign="top">utm_term</td><td align="left" valign="top"><input type="text" name="field39" /></td></tr><tr><td align="left" valign="top">Inception Message ID</td><td align="left" valign="top"><input type="text" name="field40" /></td></tr><tr><td align="left" valign="top" colspan="2"><input type="submit" name="submit" value="Submit"/></td></tr></table></form></body></html>
In 1.8.26 this works perfectly and executes in not time at all. in 1.8.27 and beyond this takes 30+ seconds and then throws an out of memory exception.
Please advise.
-Mark
Metadata
Metadata
Assignees
Labels
No labels