Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mono/mono.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--mcs/class/System.XML/Mono.Xml.Xsl.Operations/ChangeLog5
-rw-r--r--mcs/class/System.XML/Mono.Xml.Xsl.Operations/XslAttribute.cs14
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);
}