diff options
author | Atsushi Eno <atsushieno@gmail.com> | 2005-03-08 09:08:59 +0300 |
---|---|---|
committer | Atsushi Eno <atsushieno@gmail.com> | 2005-03-08 09:08:59 +0300 |
commit | 89beccc2fd65d2ed2c3b1fcb75b64cb0d3006d01 (patch) | |
tree | de4c592efc7d7334699bab5babbaeaaf99edc714 /mcs/class/System.XML/Mono.Xml.Xsl.Operations | |
parent | 3cee4bfb341eff6c94b2f6a7c29b4a9a1f331453 (diff) |
2005-03-08 Atsushi Enomoto <atsushi@ximian.com>
* XslAttribute.cs : In Evaluate(), name strings are not computed as
expected especially when they are bound to non-empty namespace.
svn path=/trunk/mcs/; revision=41547
Diffstat (limited to 'mcs/class/System.XML/Mono.Xml.Xsl.Operations')
-rw-r--r-- | mcs/class/System.XML/Mono.Xml.Xsl.Operations/ChangeLog | 5 | ||||
-rw-r--r-- | mcs/class/System.XML/Mono.Xml.Xsl.Operations/XslAttribute.cs | 14 |
2 files changed, 14 insertions, 5 deletions
diff --git a/mcs/class/System.XML/Mono.Xml.Xsl.Operations/ChangeLog b/mcs/class/System.XML/Mono.Xml.Xsl.Operations/ChangeLog index aaad0e247a3..68bb50f1051 100644 --- a/mcs/class/System.XML/Mono.Xml.Xsl.Operations/ChangeLog +++ b/mcs/class/System.XML/Mono.Xml.Xsl.Operations/ChangeLog @@ -1,3 +1,8 @@ +2005-03-08 Atsushi Enomoto <atsushi@ximian.com> + + * XslAttribute.cs : In Evaluate(), name strings are not computed as + expected especially when they are bound to non-empty namespace. + 2005-03-07 Atsushi Enomoto <atsushi@ximian.com> * XslLiteralElement.cs : literal attributes should also consider diff --git a/mcs/class/System.XML/Mono.Xml.Xsl.Operations/XslAttribute.cs b/mcs/class/System.XML/Mono.Xml.Xsl.Operations/XslAttribute.cs index 45450779112..1f5e753303c 100644 --- a/mcs/class/System.XML/Mono.Xml.Xsl.Operations/XslAttribute.cs +++ b/mcs/class/System.XML/Mono.Xml.Xsl.Operations/XslAttribute.cs @@ -113,11 +113,15 @@ namespace Mono.Xml.Xsl.Operations { nm = nm.Substring (colonAt + 1, nm.Length - colonAt - 1); // global attribute - if (nmsp == null) { - QName q = XslNameUtil.FromString (nm, nsDecls); - nm = q.Name; - nmsp = q.Namespace; - } else + if (nmsp == String.Empty && + prefix == XmlNamespaceManager.PrefixXml) + nmsp = XmlNamespaceManager.XmlnsXml; + else if (nmsp == String.Empty) { + nmsp = (string) nsDecls [prefix]; + if (nmsp == null) + nmsp = String.Empty; + } + else nm = XslNameUtil.LocalNameOf (nm); } |