diff options
author | Atsushi Eno <atsushieno@gmail.com> | 2008-12-09 11:20:24 +0300 |
---|---|---|
committer | Atsushi Eno <atsushieno@gmail.com> | 2008-12-09 11:20:24 +0300 |
commit | b505253fe7e29b5567a793afe046d0cb45081148 (patch) | |
tree | e540aba10a8b112903b1337bd107f7ab15759269 /mcs/class | |
parent | 0b09797b9fad2621095868b79d88d0aa824545ba (diff) |
2008-12-09 Atsushi Enomoto <atsushi@ximian.com>
* XslCompiledTransform.cs : Fixed bug #450797, patch by Jonathan
Anderson. Preserve whitespace-only text in xsl:text.
* XslTransformTests.cs : test for bug #450797 by Jonathan Anderson.
svn path=/trunk/mcs/; revision=121083
Diffstat (limited to 'mcs/class')
4 files changed, 29 insertions, 2 deletions
diff --git a/mcs/class/System.XML/System.Xml.Xsl/ChangeLog b/mcs/class/System.XML/System.Xml.Xsl/ChangeLog index d5c6d6ea606..c2a995a1258 100644 --- a/mcs/class/System.XML/System.Xml.Xsl/ChangeLog +++ b/mcs/class/System.XML/System.Xml.Xsl/ChangeLog @@ -1,3 +1,8 @@ +2008-12-09 Atsushi Enomoto <atsushi@ximian.com> + + * XslCompiledTransform.cs : Fixed bug #450797, patch by Jonathan + Anderson. Preserve whitespace-only text in xsl:text. + 2008-06-03 Atsushi Enomoto <atsushi@ximian.com> * XslTransform.cs : add pretty simple printing debugger. diff --git a/mcs/class/System.XML/System.Xml.Xsl/XslCompiledTransform.cs b/mcs/class/System.XML/System.Xml.Xsl/XslCompiledTransform.cs index bc05fc6bc7f..8ef6c9a1f31 100644 --- a/mcs/class/System.XML/System.Xml.Xsl/XslCompiledTransform.cs +++ b/mcs/class/System.XML/System.Xml.Xsl/XslCompiledTransform.cs @@ -221,12 +221,12 @@ namespace System.Xml.Xsl public void Load (XmlReader stylesheet, XsltSettings settings, XmlResolver resolver) { - Load (new XPathDocument (stylesheet).CreateNavigator (), settings, resolver); + Load (new XPathDocument (stylesheet, XmlSpace.Preserve).CreateNavigator (), settings, resolver); } public void Load (string stylesheet, XsltSettings settings, XmlResolver resolver) { - Load (new XPathDocument (stylesheet).CreateNavigator (), settings, resolver); + Load (new XPathDocument (stylesheet, XmlSpace.Preserve).CreateNavigator (), settings, resolver); } private void Load (XPathNavigator stylesheet, diff --git a/mcs/class/System.XML/Test/System.Xml.Xsl/ChangeLog b/mcs/class/System.XML/Test/System.Xml.Xsl/ChangeLog index 87c24749b15..6995aa9f09c 100644 --- a/mcs/class/System.XML/Test/System.Xml.Xsl/ChangeLog +++ b/mcs/class/System.XML/Test/System.Xml.Xsl/ChangeLog @@ -1,3 +1,7 @@ +2008-12-09 Atsushi Enomoto <atsushi@ximian.com> + + * XslTransformTests.cs : test for bug #450797 by Jonathan Anderson. + 2008-10-02 Atsushi Enomoto <atsushi@ximian.com> * XslTransformTests.cs : removed extra NotDotNet. diff --git a/mcs/class/System.XML/Test/System.Xml.Xsl/XslTransformTests.cs b/mcs/class/System.XML/Test/System.Xml.Xsl/XslTransformTests.cs index 60ac6379276..2c77adfd90b 100644 --- a/mcs/class/System.XML/Test/System.Xml.Xsl/XslTransformTests.cs +++ b/mcs/class/System.XML/Test/System.Xml.Xsl/XslTransformTests.cs @@ -2307,6 +2307,24 @@ World"; xslTransform.Transform (new XPathDocument ("Test/XmlFiles/xsl/391424.xml", XmlSpace.Preserve), null, sw); Assert.AreEqual ("<?xml version=\"1.0\" encoding=\"utf-16\"?>Document found", sw.ToString ()); } + + [Test] + public void XslTextElement_PreservesWhitespace () // bug 450797 + { + XslCompiledTransform xslt = new XslCompiledTransform (); + xslt.Load (new XmlTextReader (new StringReader (@" +<xsl:stylesheet + xmlns:xsl=""http://www.w3.org/1999/XSL/Transform"" + version=""1.0""> + <xsl:output method='text' omit-xml-declaration='yes'/> + <xsl:template match='foo'> + <xsl:text> </xsl:text> + </xsl:template> +</xsl:stylesheet>"))); + StringWriter sw = new StringWriter (); + xslt.Transform (new XmlTextReader (new StringReader (@"<foo>bar</foo>")), null, sw); + Assert.AreEqual (" ", sw.ToString ()); + } #endif } } |