summaryrefslogtreecommitdiff
path: root/mcs/class/System.Xml.Linq
diff options
context:
space:
mode:
Diffstat (limited to 'mcs/class/System.Xml.Linq')
-rw-r--r--mcs/class/System.Xml.Linq/System.Xml.Linq/XContainer.cs12
-rw-r--r--mcs/class/System.Xml.Linq/System.Xml.Linq/XElement.cs3
-rw-r--r--mcs/class/System.Xml.Linq/System.Xml.Linq/XName.cs2
-rw-r--r--mcs/class/System.Xml.Linq/System.Xml.Linq/XObject.cs16
-rw-r--r--mcs/class/System.Xml.Linq/System.Xml.Schema/Extensions.cs4
5 files changed, 19 insertions, 18 deletions
diff --git a/mcs/class/System.Xml.Linq/System.Xml.Linq/XContainer.cs b/mcs/class/System.Xml.Linq/System.Xml.Linq/XContainer.cs
index f38458ca3b..af5fd97640 100644
--- a/mcs/class/System.Xml.Linq/System.Xml.Linq/XContainer.cs
+++ b/mcs/class/System.Xml.Linq/System.Xml.Linq/XContainer.cs
@@ -181,16 +181,20 @@ namespace System.Xml.Linq
public IEnumerable <XElement> Elements (XName name)
{
- foreach (XElement el in Elements ())
- if (el.Name == name)
+ foreach (XNode n in Nodes ()) {
+ XElement el = n as XElement;
+ if (el != null && el.Name == name)
yield return el;
+ }
}
public XElement Element (XName name)
{
- foreach (XElement el in Elements ())
- if (el.Name == name)
+ foreach (XNode n in Nodes ()) {
+ XElement el = n as XElement;
+ if (el != null && el.Name == name)
return el;
+ }
return null;
}
diff --git a/mcs/class/System.Xml.Linq/System.Xml.Linq/XElement.cs b/mcs/class/System.Xml.Linq/System.Xml.Linq/XElement.cs
index 70b6430929..81dea5e4a4 100644
--- a/mcs/class/System.Xml.Linq/System.Xml.Linq/XElement.cs
+++ b/mcs/class/System.Xml.Linq/System.Xml.Linq/XElement.cs
@@ -382,7 +382,8 @@ namespace System.Xml.Linq
public XAttribute Attribute (XName name)
{
- foreach (XAttribute a in Attributes ())
+ XAttribute next;
+ for (XAttribute a = attr_first; a != null; a = a.NextAttribute)
if (a.Name == name)
return a;
return null;
diff --git a/mcs/class/System.Xml.Linq/System.Xml.Linq/XName.cs b/mcs/class/System.Xml.Linq/System.Xml.Linq/XName.cs
index 80d0e7b09c..59bbceb4f9 100644
--- a/mcs/class/System.Xml.Linq/System.Xml.Linq/XName.cs
+++ b/mcs/class/System.Xml.Linq/System.Xml.Linq/XName.cs
@@ -153,7 +153,7 @@ namespace System.Xml.Linq
public override string ToString ()
{
- if (ns == XNamespace.None)
+ if (Object.ReferenceEquals (ns, XNamespace.None))
return local;
return String.Concat ("{", ns.NamespaceName, "}", local);
}
diff --git a/mcs/class/System.Xml.Linq/System.Xml.Linq/XObject.cs b/mcs/class/System.Xml.Linq/System.Xml.Linq/XObject.cs
index 8353b25d2b..c620e4f599 100644
--- a/mcs/class/System.Xml.Linq/System.Xml.Linq/XObject.cs
+++ b/mcs/class/System.Xml.Linq/System.Xml.Linq/XObject.cs
@@ -165,42 +165,42 @@ namespace System.Xml.Linq
internal void OnAddingObject (object addedObject)
{
- OnChanging (addedObject, new XObjectChangeEventArgs (XObjectChange.Add));
+ OnChanging (addedObject, XObjectChangeEventArgs.Add);
}
internal void OnAddedObject (object addedObject)
{
- OnChanged (addedObject, new XObjectChangeEventArgs (XObjectChange.Add));
+ OnChanged (addedObject, XObjectChangeEventArgs.Add);
}
internal void OnNameChanging (object renamedObject)
{
- OnChanging (renamedObject, new XObjectChangeEventArgs (System.Xml.Linq.XObjectChange.Name));
+ OnChanging (renamedObject, XObjectChangeEventArgs.Name);
}
internal void OnNameChanged (object renamedObject)
{
- OnChanged (renamedObject, new XObjectChangeEventArgs (System.Xml.Linq.XObjectChange.Name));
+ OnChanged (renamedObject, XObjectChangeEventArgs.Name);
}
internal void OnRemovingObject (object removedObject)
{
- OnChanging (removedObject, new XObjectChangeEventArgs (XObjectChange.Remove));
+ OnChanging (removedObject, XObjectChangeEventArgs.Remove);
}
internal void OnRemovedObject (object removedObject)
{
- OnChanged (removedObject, new XObjectChangeEventArgs (XObjectChange.Remove));
+ OnChanged (removedObject, XObjectChangeEventArgs.Remove);
}
internal void OnValueChanging (object changedObject)
{
- OnChanging (changedObject, new XObjectChangeEventArgs (XObjectChange.Value));
+ OnChanging (changedObject, XObjectChangeEventArgs.Value);
}
internal void OnValueChanged (object changedObject)
{
- OnChanged (changedObject, new XObjectChangeEventArgs (XObjectChange.Value));
+ OnChanged (changedObject, XObjectChangeEventArgs.Value);
}
diff --git a/mcs/class/System.Xml.Linq/System.Xml.Schema/Extensions.cs b/mcs/class/System.Xml.Linq/System.Xml.Schema/Extensions.cs
index 83bee5fe7e..7aa0bb9f00 100644
--- a/mcs/class/System.Xml.Linq/System.Xml.Schema/Extensions.cs
+++ b/mcs/class/System.Xml.Linq/System.Xml.Schema/Extensions.cs
@@ -24,8 +24,6 @@
// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
//
-#if !NET_2_1
-
using System;
using System.Xml;
using System.Xml.Linq;
@@ -109,5 +107,3 @@ namespace System.Xml.Schema
}
}
}
-
-#endif