[Mono-bugs] [Bug 43371][Cos] New - AspParser cripples xml declaration in xhtml docs

bugzilla-daemon@rocky.ximian.com bugzilla-daemon@rocky.ximian.com
Tue, 20 May 2003 09:25:33 -0400 (EDT)


Please do not reply to this email- if you want to comment on the bug, go to the
URL shown below and enter your comments there.

Changed by scyldinga@f-m.fm.

http://bugzilla.ximian.com/show_bug.cgi?id=43371

--- shadow/43371	Tue May 20 09:25:33 2003
+++ shadow/43371.tmp.25146	Tue May 20 09:25:33 2003
@@ -0,0 +1,94 @@
+Bug#: 43371
+Product: Mono/Class Libraries
+Version: unspecified
+OS: Debian Woody
+OS Details: 
+Status: NEW   
+Resolution: 
+Severity: 
+Priority: Cosmetic
+Component: System.Web
+AssignedTo: mono-bugs@ximian.com                            
+ReportedBy: scyldinga@f-m.fm               
+QAContact: mono-bugs@ximian.com
+TargetMilestone: ---
+URL: 
+Cc: 
+Summary: AspParser cripples xml declaration in xhtml docs 
+
+Description of Problem:
+
+Xsp and mod_mono return text enclosed in '<?' '?>' (i.e. xml declarations
+in xhtml) without white space or punctuation.
+
+
+
+Steps to reproduce the problem:
+1. Include a xml declaration in any page served through xsp or mod_mono
+2. View the output.
+
+Actual Results:
+<xmlversion1.0encodingUTF-8>
+
+Expected Results:
+<?xml version="1.0" encoding="UTF-8"?>
+
+How often does this happen? 
+Always.
+
+Additional Information:
+
+Proposed patch to AspParse:
+
+Index: AspParser.cs
+===================================================================
+RCS file: /mono/mcs/class/System.Web/System.Web.Compilation/AspParser.cs,v
+retrieving revision 1.9
+diff -u -r1.9 AspParser.cs
+--- AspParser.cs	4 May 2003 02:50:04 -0000	1.9
++++ AspParser.cs	16 May 2003 11:20:41 -0000
+@@ -219,7 +219,7 @@
+ 
+				OnError ("expecting '>'");
+ 
+ 
+			tagtype = TagType.Close;
+-
+			break;
++
+			break;		
+ 
+		case '!':
+ 
+			bool double_dash = Eat (Token.DOUBLEDASH);
+ 
+			if (double_dash)
+@@ -241,6 +241,14 @@
+ 
+				tagtype = TagType.Text;
+ 
+				id = "<!" + comment + end;
+ 
+			}
++
+			break;
++
+		case '?':
++
+			tagtype = TagType.Text;
++
+			tokenizer.Verbatim = true;
++
+			end = ">";
++
+			comment = GetVerbatim (tokenizer.get_token (), end);	
++
+			id = "<?" + comment + end;
++
+			tokenizer.Verbatim = false;
+ 
+			break;
+ 
+		case Token.IDENTIFIER:
+ 
+			id = tokenizer.Value;